Android应用程序注册表



我的要求是,第一次在Android手机上安装应用程序,需要从特定的商店/组织获得许可代码。我已经使用手机型号创建了生成密钥。现在的问题是,如果它的第一个只需要显示许可证屏幕,否则进入第一个屏幕。我们如何识别特定的应用程序是否已经安装。/从登记处?在这里注册表是可用的。

我不能很深入或清楚地探索我的。对不起。

请帮帮我。

可以在android.content中设置bool值。SharedPreferences,然后在第一次oncreate()中检查该bool值是否为false。

如果是推送许可屏幕意图并执行应用程序检查,如果存在,则将首选项更新为true。所以在下次启动时,它会跳过它,在那里你可以加载主屏幕。

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
settings = getSharedPreferences(PREFS_NAME, 0);
boolean enteredDetails = settings.getBoolean("FirstTime", false);

if(enteredDetails){
setContentView(R.layout.main); //loads the main screen            
}
else{
startActivityForResult(new Intent(this, License.class), GET_DETAILS); 
}
}

你可以简单地使用Context.openFileInput()/Context.openFileOutput()来存储一段信息,这将告诉你的应用程序是否已经显示许可证屏幕。这样,您就可以在主ActivityonCreate():

中使用如下内容
if (nothingWrittenInAFileCalled(FILE_NAME)) { // using Context.openFileInput()
     showLicense();
     writeAFileCalled(FILE_NAME); // using Context.openFileOutput()
}

如果不满意,您也可以在许可证服务器端检查。例如,如果您向许可证服务器发送IMEI的哈希值,则许可证服务器将能够确定应用程序是否已经安装。在这种情况下,更喜欢不可逆哈希:这是为了避免发送/存储IMEI,因为人们可以将此信息视为私人数据。

相关内容

最新更新