我想知道最好的方法是检查某个用户是否第一次使用我的应用,以及更新时它会重置并让它认为自己是新用户。
编辑(更精确):我想在我的sql server中存储一个用户ID号,我希望每个用户在第一次下载时都能创建一个密码,但我也希望他们可以选择“已经”拥有帐户“以便他们可以跨设备同步帐户
答案 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();
}
}
我希望这会让你感到沮丧,也很容易理解。