如何检查用户是否第一次使用我的应用程序

时间:2014-05-20 15:21:35

标签: java android sharedpreferences android-preferences

我想知道最好的方法是检查某个用户是否第一次使用我的应用,以及更新时它会重置并让它认为自己是新用户。

编辑(更精确):我想在我的sql server中存储一个用户ID号,我希望每个用户在第一次下载时都能创建一个密码,但我也希望他们可以选择“已经”拥有帐户“以便他们可以跨设备同步帐户

3 个答案:

答案 0 :(得分:3)

与Illegal Argument提到的一样,最可靠的方法是使用服务器,因为如果您使用共享首选项,用户可以删除数据或移动到其他设备并且看起来是一个全新的用户。

如果您不想在创建和管理自己的服务器时遇到麻烦,可以考虑使用Google's Cloud Save API。当您的应用启动时,请检查云中的现有数据。如果没有任何东西,那么它就是新用户,因此创建数据。它应该就这么简单。

答案 1 :(得分:0)

了解用户是第一次使用者的最可靠方法是通过服务器验证。另一种方法是使用共享首选项并在内部或外部存储中保存某些数据。但是,在移动设备中存储数据并不是万无一失,因为用户可以轻松删除数据。

答案 2 :(得分:0)

<强>全局

String _StrCode="";
SharedPreferences preferences;
String _responseCode=null;

在oncreate中但在设置内容视图之前检查

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    this.requestWindowFeature(Window.FEATURE_NO_TITLE);
    preferences = getSharedPreferences("mypref", 0);        
    _StrCode= preferences.getString("Code", _StrCode);
            if(_StrCode.equalsIgnoreCase("")){
           setContentView(R.layout.activity_qdc_status__launcher);
                  // here you can assign a value to 
                      _StrCode ="some value";
                      Editor prefsEditor = preferences .edit();
          prefsEditor.putString("Code",_StrCode);
                      prefsEditor.commit();
             }else{
                 Intent _in= new Intent(firstscreen,secondscreen.class);
         startActivity(_in);
           finish();
             }
}

我希望这会让你感到沮丧,也很容易理解。