我已经了解了如何使用SharedPreferences。但我不明白的是在哪里编写代码片段以将数据插入共享首选项。在第一次应用程序启动期间,此代码只能执行一次。
此外,第一项活动可以检查此SharedPreferences数据,以了解该应用程序是否已首次启动。
我希望您明白我想在第一次也是唯一一次将数据写入SharedPreferences。我应该在哪里做?如果在任何活动中编写,则此代码将在下次活动启动时再次执行。
是否有内置变量来确定应用程序是否是第一次启动?
答案 0 :(得分:0)
如果应用程序之前已经运行过,你可以做的是创建一个sharedPrefs布尔值。将其设置为false,如果它是假的,则执行您想要的代码。然后,当应用程序最终运行并完成代码时,将布尔值设置为true。
答案 1 :(得分:0)
如果我理解你想要做的事情是非常直截了当的。 在主活动的onCreate中放置一个布尔变量。 并将其设置为false(初始值为true),以便您知道它是否是您的应用第一次运行
答案 2 :(得分:0)
您可以创建自己的Application类,并在onCreate方法中编写SharedPreferences。
public class MyApplication extends Application {
@Override
public void onCreate() {
SharedPreferences settings = getSharedPreferences("MyPrefs", MODE_PRIVATE);
Boolean firstRun = settings.getBoolean("firstRun",true);
if(firstRun){
//insert your data into the shared preferences here
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("firstRun", false);
editor.commit();
}
}
}
AnroidManifest.xml
<application android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:name=".MyApplication">
...
</application>