1

我正在尝试制作一个 webview 应用程序,但我被困在某个地方。

当我第一次启动应用程序(安装)时,它应该问一个问题,例如:

你读过服务条款吗?Yes No

如果我选择“是”,应用程序应该记住它,并且不应该再次询问该程序是否稍后再次启动。如果我选择“否”,应用程序应该终止,并且它应该在下次启动应用程序时询问相同的问题。

我真的被卡住了,我找不到这样的教程。

4

2 回答 2

0

我会在本地存储一个属性以在启动时读取。这是 API http://developer.android.com/reference/java/util/Properties.html

于 2012-04-06T13:35:14.510 回答
0

我将创建一个加载活动,检查它是否要求用户接受权限 (TOS),然后它是否已进入主活动,如果不显示并等待。在加载活动的 oncreate 中试试这个

SharedPreferences sp = getSharedPreferences("TOS", Context.MODE_PRIVATE);
boolean hasAccepted = sp.getBoolean("accepted", false);
if(hasAccepted)
{
    //start next activity
}else {
    ///display the TOS
}

然后为调用这些方法的是/否按钮创建一个侦听器

public void onClickYes(){
 SharedPreferences sp = getSharedPreferences("TOS", Context.MODE_PRIVATE);
 sp.edit().putBoolean("accepted", true).commit();
}

public void onClickNo(){
  finish();
}

这样做是在应用加载时尝试让 SharedPreference “接受”。如果找不到它,则使用默认值 false 因此 (sp.getBoolean("accepted", false")。然后,如果用户接受 tos,则将“已接受”的 SharedPreference 存储为 true。所以下次应用程序加载它将能够找到首选项并返回 true,因此不显示 TOS

于 2012-04-06T13:38:22.717 回答