首次启动android应用程序时如何进行操作

问题描述

| 当我的应用程序安装并首次打开(有互联网连接时)时,我希望手机从服务器上下载一些信息并将其插入数据库中。 如果信息没有完全下载或完全没有下载,则应在完全下载之前进行此活动? 我将如何去做?     

解决方法

        使用首选项 在您的活动中:
private boolean isFirstLaunch() {
    // Restore preferences
    SharedPreferences settings = getSharedPreferences(PREFS_NAME,0);
    boolean isFirstLaunch = settings.getBoolean(\"isFirstLaunch\",true);
    Log.i(TAG + \".isFirstLaunch\",\"sharedPreferences \");
    return isFirstLaunch;
}
并来自
onCreate
电话
if (isFirstLaunch()) {
    Intent firstLaunchIntent = new Intent(this,GetStartedActivity.class);
    firstLaunchIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(firstLaunchIntent);
    // set the bool to false in next activity !
    finish();
}
    ,        在数据库,共享首选项或文件中添加标志,以表明您已下载数据。在onResume中,检查该标志以及设备是否具有连接性。如果该标志为假,并且您具有连接性,请尝试下载数据。 如果成功,则更新标志。     ,        为此使用SharedPreference。创建一个布尔变量,并在操作完成后对其进行更改。在您的Main / Launcher活动的onCreate中,检查此变量并相应地执行操作。一些伪代码。
if (!sharedpreferences.getBoolean(\"isOpComplete\",false)) {
    // perform my operation 
    performOperation();
}

performOperation() {
    // Operation complete
    SharedPreferences.Editor editor = sharedpreferences.edit();
    editor.putBoolean(\"isOpComplete\",true);
    editor.commit();
}
    

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...