繁体   English   中英

启动应用程序时发生的活动

[英]Activity that happens when the app is launched

我正在创建一个android应用程序,并且想在该应用程序首次启动时进行一次活动。 当用户关闭应用程序并重新打开应用程序时,相同的屏幕将不再显示。 有点像初始注册。 我没有数据库。 请保持答案简单,因为我才刚开始使用android。 到目前为止,其他类似问题都没有道理。 任何帮助都可以。 谢谢,J。

您应该使用SharedPreferences。 让主活动检查一个布尔型偏好设置(使用getSharedPreferences(context,mode)),并在且仅当此偏好设置为true或false时启动另一个活动(该活动只能运行一次)。 (if()/ else)然后,在另一个活动中,使用SharedPreferences.editor()更改该首选项。 不要忘记.commit(); 下次您的主要活动启动时,它将再次检查此首选项,但由于该首选项已更改,因此它将不会启动其他活动。

希望这有帮助,祝你好运。

如果您无法使用数据库,那么我建议您使用SharedPreferences类存储一个布尔变量,布尔变量指示您的一次性Activity是否已显示。 在初始Activity ,您可以检查此首选项。 如果该值为false,则启动一次Activity然后在该一次Activity ,将首选项设置为true。 只要正确设置了首选项值,后续的启动将永远不会显示一次性Activity

您可以使用一个空文件作为标记,以了解应用是否首次启动。 在启动过程中,如果该标记文件不存在,则意味着该应用程序是第一次启动,您将执行初始注册,并且您应该创建上述空标记文件

SharedPreferences是解决方案,您可以记录是否是第一次。

SharedPreferences prefs = getSharedPreferences(MY_PREFERENCES, Context.MODE_PRIVATE);
int is_first_time = prefs.getInt("IS_FIRST_TIME", 0);

if(0==is_first_time){

  //here you can launch your activity

  //Save that you already launch your FirstTimeActivity
  SharedPreferences prefs = getSharedPreferences(MY_PREFERENCES, Context.MODE_PRIVATE);
  SharedPreferences.Editor editor = prefs.edit();
  editor.putint("IS_FIRST_TIME", 1);
  editor.commit();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM