Android: обновить диалог с настройками общего доступа - PullRequest
0 голосов
/ 14 октября 2011

Я пытаюсь настроить диалоговое окно, которое будет появляться после того, как пользователи обновят или установят приложение в первый раз. Я не могу понять, как именно это сделать. В настоящее время я пытался использовать менеджер пакетов, чтобы получить версию для пользователей и сравнить ее, чтобы увидеть, является ли она самой последней. Я не уверен, что это будет работать, так как его сложно проверить на то, что зависит от обновления пакета. Вот мой код:

public void firstrun() {
    String version = "";
    String currenver = "3.9";
    // update function
    try {
        PackageInfo manager = getPackageManager().getPackageInfo(
                getPackageName(), 0);
        version = manager.versionName;
    } catch (NameNotFoundException e) {
        // Handle exception
    }
    getSharedPreferences("PREFERENCE", MODE_PRIVATE).edit()
            .putString(version, version).commit();

    boolean firstrun = getSharedPreferences("PREFERENCE", MODE_PRIVATE)
            .getBoolean("firstrun", true);

    if (version.matches(currenver)) {
        // Save the state
        getSharedPreferences("PREFERENCE", MODE_PRIVATE).edit()
                .putBoolean("firstrun", false).commit();
    } else {
        // Save the state
        getSharedPreferences("PREFERENCE", MODE_PRIVATE).edit()
                .putBoolean("firstrun", true).commit();

    }

    if (firstrun == true) {
        new AlertDialog.Builder(this)
                .setTitle("Welcome!")
                .setIcon(R.drawable.icondialog)
                .setMessage("UpdateText")
                .setNeutralButton("OK", null).show();
    }

}

1 Ответ

1 голос
/ 14 октября 2011

Я думаю, что вы на правильном пути, есть много решений здесь и здесь , которые могут дать вам идеи.

Кроме того, вы можете создать таблицу базы данных, которая содержит флаг для запроса или нет. По умолчанию это будет значение для приглашения, а затем, когда пользователь запустит и подтвердит диалог, вы можете изменить флаг. Затем в вашем методе onUpgrade () вашего SQLiteOpenHelper вы можете снова установить флажок, и, таким образом, ваше приложение предложит установить новую версию.

...