检测移动应用程序的首次使用

3

我想使用Phonegap编写一个移动应用程序(android),并且我想检测第一次使用我的应用程序以执行一些激活过程。 我该如何检测这是否是我应用程序的第一次使用? 我应该使用任何数据库?还是类似于cookies的东西?

2个回答

2

嗯,我从未尝试过PhoneGap,但通常的方法(我在Android和iPhone上都用本地代码实现过)是将一些字节写入文件。然后,每次打开它时,尝试读取该文件。如果无法打开,则表示这是第一次。

如果不是第一次并且仍然失败,您将通过重新开始一切并恢复为从未发生过故障的状态来“优雅地失败”。

我还建议您将这些字节设置为“第一次运行”的UNIX时间。这样,如果您永远不需要知道时间,可以忽略它。但是,如果您需要它,它已经存在了。我甚至会在一个小标题之前添加一个字节计数,以便您可以轻松地扩展此格式。

这就是我的意见。


0
你可以在任何地方编写这个函数:
public static String LoadPreferencesString(Context con, String key) {
    // ContextWrapper wrapper=new ContextWrapper(con);
    SharedPreferences sharedPreferences = con.getSharedPreferences(
            "yourxmlfilename", Context.MODE_PRIVATE);
    String strSavedMem1 = sharedPreferences.getString(key, "");
    return strSavedMem1;
}

public static void SavePreferencesString(Context con, String key, String value) {
    SharedPreferences sharedPreferences = con.getSharedPreferences(
            "yourxmlfilename", Context.MODE_PRIVATE);
    SharedPreferences.Editor editor = sharedPreferences.edit();
    editor.putString(key, value);
    editor.commit();
}

您可以在第一次运行时将带有键的值写入XML文件,该键是您在首次运行时确定的名称。然后您可以检查该值是否为null。如果该值为null(或空格( )),则表示应用程序是第一次运行。


我应该在哪里首次创建这个XML文件? 如果它不存在,它将使用con.getsharedpreferences命令创建。 - D3GAN
当您在任何地方首次调用SavePreferencesString函数时,文件将被创建。 - yahya.can

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接