Move important notice version to resource
Bug: 10587358 Change-Id: Ie24fc6c53b15880f4ace991a25223056f03f5eda
This commit is contained in:
parent
776d46a771
commit
5b8ffad26c
2 changed files with 32 additions and 6 deletions
24
java/res/values/strings-config-important-notice.xml
Normal file
24
java/res/values/strings-config-important-notice.xml
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!--
|
||||||
|
/*
|
||||||
|
**
|
||||||
|
** Copyright 2014, The Android Open Source Project
|
||||||
|
**
|
||||||
|
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
** you may not use this file except in compliance with the License.
|
||||||
|
** You may obtain a copy of the License at
|
||||||
|
**
|
||||||
|
** http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
**
|
||||||
|
** Unless required by applicable law or agreed to in writing, software
|
||||||
|
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
** See the License for the specific language governing permissions and
|
||||||
|
** limitations under the License.
|
||||||
|
*/
|
||||||
|
-->
|
||||||
|
|
||||||
|
<resources>
|
||||||
|
<integer name="config_important_notice_version">0</integer>
|
||||||
|
<!-- TODO: Add important notice title and description string resources. -->
|
||||||
|
</resources>
|
|
@ -22,13 +22,11 @@ import android.provider.Settings;
|
||||||
import android.provider.Settings.SettingNotFoundException;
|
import android.provider.Settings.SettingNotFoundException;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
|
import com.android.inputmethod.latin.R;
|
||||||
|
|
||||||
public final class ImportantNoticeUtils {
|
public final class ImportantNoticeUtils {
|
||||||
private static final String TAG = ImportantNoticeUtils.class.getSimpleName();
|
private static final String TAG = ImportantNoticeUtils.class.getSimpleName();
|
||||||
|
|
||||||
// The current version number of an important notice.
|
|
||||||
// This number must be incremented whenever users should see a new important notice.
|
|
||||||
private static final int CURRENT_IMPORTANT_NOTICE_VERSION = 0;
|
|
||||||
|
|
||||||
// {@link SharedPreferences} name to save the last important notice version that has been
|
// {@link SharedPreferences} name to save the last important notice version that has been
|
||||||
// displayed to users.
|
// displayed to users.
|
||||||
private static final String PREFERENCE_NAME = "important_notice";
|
private static final String PREFERENCE_NAME = "important_notice";
|
||||||
|
@ -60,16 +58,20 @@ public final class ImportantNoticeUtils {
|
||||||
return context.getSharedPreferences(PREFERENCE_NAME, Context.MODE_PRIVATE);
|
return context.getSharedPreferences(PREFERENCE_NAME, Context.MODE_PRIVATE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static int getCurrentImportantNoticeVersion(final Context context) {
|
||||||
|
return context.getResources().getInteger(R.integer.config_important_notice_version);
|
||||||
|
}
|
||||||
|
|
||||||
public static boolean hasNewImportantNotice(final Context context) {
|
public static boolean hasNewImportantNotice(final Context context) {
|
||||||
final SharedPreferences prefs = getImportantNoticePreferences(context);
|
final SharedPreferences prefs = getImportantNoticePreferences(context);
|
||||||
final int lastVersion = prefs.getInt(KEY_IMPORTANT_NOTICE_VERSION, 0);
|
final int lastVersion = prefs.getInt(KEY_IMPORTANT_NOTICE_VERSION, 0);
|
||||||
return CURRENT_IMPORTANT_NOTICE_VERSION > lastVersion;
|
return getCurrentImportantNoticeVersion(context) > lastVersion;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void updateLastImportantNoticeVersion(final Context context) {
|
public static void updateLastImportantNoticeVersion(final Context context) {
|
||||||
final SharedPreferences prefs = getImportantNoticePreferences(context);
|
final SharedPreferences prefs = getImportantNoticePreferences(context);
|
||||||
prefs.edit()
|
prefs.edit()
|
||||||
.putInt(KEY_IMPORTANT_NOTICE_VERSION, CURRENT_IMPORTANT_NOTICE_VERSION)
|
.putInt(KEY_IMPORTANT_NOTICE_VERSION, getCurrentImportantNoticeVersion(context))
|
||||||
.apply();
|
.apply();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue