我怎么知道Android应用程序是第一次加载?

时间:2010-07-27 20:11:39

标签: android

如果应用程序在下载后第一次加载,我该如何判断。我的意思是当应用程序首次从市场上购买/下载时,我将如何确定这是第一次(从未在此手机上运行)这将会运行因此我可以抛出一些注册活动?


是的,我想要声明一个表,检查它是否有任何行。如果有行,那么这是因为它已经加载并且我们插入了一行。

但是我想避免这种情况,他们的任何API可以告诉我用户之前在这款手机上使用过此应用吗?

5 个答案:

答案 0 :(得分:4)

您可以拥有一个跟踪的标志,即isFirstTime。检查一下您的主要活动:

if(isFirstTime)
  // do registration

isFirstTime = false;

您可以将执行之间的值保存为共享首选项。有关如何执行此操作的详细信息,请参阅Data Storage文档。

答案 1 :(得分:4)

Android具有存储首选项的API。

您可以在SharedPreferences中存储标记,请阅读about shared preferences

答案 2 :(得分:1)

在第一次加载时保留一个属性并在每次加载时检查它,如果它存在,那么你知道它已经加载了一次。或者你甚至可以把它作为一个负载计数器,也许你可以将这些信息用作统计数据(报告一些地方)

答案 3 :(得分:1)

每个应用程序都有自己的数据目录(/ data / data /)。

只需在那里写一个空文件,并在每次启动应用程序时检查它

答案 4 :(得分:0)

我不知道任何Android Market API会告诉您用户之前是否下载/使用过该应用。

我认为您必须自己动手,这样可以在应用卸载/重新安装周期中保留数据的两种选择:

(1)将文件保存在SD卡上,检查是否已安装该应用程序或

(2)联系服务器并提供一些用户特定信息,以检查它是否已经下载/使用过。

SD卡方法存在的问题是,如果用户删除文件或切换SD卡,则无效。

对于服务器型号,您需要有一台服务器来记录某些信息,例如用户ID或设备ID或某些混合信息。