diff options
Diffstat (limited to 'srcs/juloo.keyboard2/EmojiGridView.java')
| -rw-r--r-- | srcs/juloo.keyboard2/EmojiGridView.java | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/srcs/juloo.keyboard2/EmojiGridView.java b/srcs/juloo.keyboard2/EmojiGridView.java index 581200c..749ce3e 100644 --- a/srcs/juloo.keyboard2/EmojiGridView.java +++ b/srcs/juloo.keyboard2/EmojiGridView.java @@ -83,7 +83,9 @@ public class EmojiGridView extends GridView private void saveLastUsed() { - SharedPreferences.Editor edit = emojiSharedPreferences().edit(); + SharedPreferences.Editor edit; + try { edit = emojiSharedPreferences().edit(); } + catch (Exception _e) { return; } HashSet<String> set = new HashSet<String>(); for (Emoji emoji : _lastUsed.keySet()) set.add(String.valueOf(_lastUsed.get(emoji)) + "-" + emoji.name()); @@ -93,15 +95,18 @@ public class EmojiGridView extends GridView private void loadLastUsed() { - SharedPreferences prefs = emojiSharedPreferences(); - Set<String> lastUseSet = prefs.getStringSet(LAST_USE_PREF, null); _lastUsed = new HashMap<Emoji, Integer>(); + SharedPreferences prefs; + // Storage might not be available (eg. the device is locked), avoid + // crashing. + try { prefs = emojiSharedPreferences(); } + catch (Exception _e) { return; } + Set<String> lastUseSet = prefs.getStringSet(LAST_USE_PREF, null); if (lastUseSet != null) for (String emojiData : lastUseSet) { String[] data = emojiData.split("-", 2); Emoji emoji; - if (data.length != 2) continue ; emoji = Emoji.getEmojiByName(data[1]); |
