Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java “你是怎么做一次”的;我同意;应用程序上用户的活动屏幕?_Java_Android_Android Studio - Fatal编程技术网

Java “你是怎么做一次”的;我同意;应用程序上用户的活动屏幕?

Java “你是怎么做一次”的;我同意;应用程序上用户的活动屏幕?,java,android,android-studio,Java,Android,Android Studio,在我的应用进入主菜单之前,你能帮我弄清楚如何让我的应用让用户选中“我同意”框吗?我需要它仅在用户第一次使用应用程序时显示此屏幕。我是android studio的新手,希望您能给予我帮助。 谢谢 您可以轻松地使用来完成此任务。试着做一些类似的事情: final String PREF_NAME = "MyPref"; // getting saved preferences SharedPreferences settings = getSharedPreferences(PREF_NAME,

在我的应用进入主菜单之前,你能帮我弄清楚如何让我的应用让用户选中“我同意”框吗?我需要它仅在用户第一次使用应用程序时显示此屏幕。我是android studio的新手,希望您能给予我帮助。
谢谢

您可以轻松地使用来完成此任务。试着做一些类似的事情:

final String PREF_NAME = "MyPref";

// getting saved preferences
SharedPreferences settings = getSharedPreferences(PREF_NAME, 0);

if (settings.getBoolean("my_first_time", true)) {
    //the app is being launched for first time, do something        
    Log.d("Comments", "First time");

             // first time task
             runUserAgreements();

    // record the fact that the app has been started at least once
    settings.edit().putBoolean("my_first_time", false).commit(); 
}
然后声明一个名为
runUserAgreements()
的函数,并运行一个显示用户协议和内容的活动或对话框

编辑: 我建议将上述代码放在扩展
应用程序的类中
要检查默认活动中通常不包含的firstrun:

public class MyApp extends Application {
    @Override
    public void onCreate() {
        super.onCreate();

        // CODE HERE

    }
}
不要忘记调用AndroidManifest.xml中的类:

<application android:name=".MyApp"
             android:label="@string/app_name"
             .
             .
             ...>
....
</application>

....

看看谷歌的项目示例,特别是这个活动:。我觉得它的UI设计也相当不错。

Sdghasemi的回答非常好。我也用过。顺便说一句,我还存储了最后一次“我同意”的时间,并每隔一周左右再次弹出它-只是为了确定,为了减轻责任。