9

Android是否提供smth。像那样,或者我每次启动应用程序时都必须检查“哦,我是新安装的吗?我现在必须初始化共享首选项吗?”

4

3 回答 3

3

如果您依赖某些关键值,最好检查首选项文件是否存在。

于 2010-09-06T11:56:49.997 回答
1

如果您担心用户会清除您应用的数据,请考虑在<application>您的 AndroidManifest.xml 标记内使用此标志:

android:manageSpaceActivity="path.to.your.activity"

然后,不是“清除数据”按钮,而是“管理空间”。当用户单击该按钮时,您的活动将被调用。

一般来说,你应该按照 Select0r 提到的那样做。所有其他“默认 xml/...”对于您维护项目的时间都是不值得的。

于 2012-02-22T10:19:06.873 回答
0

您可以从首选项中获取任何键/值对并在方法调用中提供默认值,如下所示:prefValue = prefs.getString("prefName", "defaultValue");,无需初始化。
如果首选项中不存在键(在这种情况下为“prefName”),则将使用默认值。一旦您让用户更改首选项,PreferencesActivity 将负责将更改的值写回首选项。

这是一个关于 Android Preferences 的好教程:
http ://www.kaloer.com/android-preferences

于 2010-09-06T11:54:19.113 回答