Skip to content

Commit

Permalink
[fix] crash after first install
Browse files Browse the repository at this point in the history
  • Loading branch information
lolo-io committed Dec 27, 2019
1 parent cd82f86 commit 4f43893
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 15 deletions.
4 changes: 2 additions & 2 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ android {
applicationId "com.lolo.io.onelist"
minSdkVersion 16
targetSdkVersion 28
versionCode 11
versionName "1.2.2"
versionCode 12
versionName "1.2.3"
vectorDrawables.useSupportLibrary = true
}

Expand Down
5 changes: 2 additions & 3 deletions app/src/main/java/com/lolo/io/onelist/OneListFragment.kt
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,8 @@ class OneListFragment : Fragment(), ListsCallbacks, ItemsCallbacks, MainActivity

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
UpdateHelper.applyUpdatePatches(mainActivity, allLists)
UpdateHelper.applyUpdatePatches(mainActivity)
allLists.addAll(persistence.getAllLists())
val ver = mainActivity.packageManager.getPackageInfo(mainActivity.packageName, 0).versionName
if (persistence.version != ver) persistence.version = ver
}
Expand Down Expand Up @@ -145,8 +146,6 @@ class OneListFragment : Fragment(), ListsCallbacks, ItemsCallbacks, MainActivity
else buttonClearComment.visibility = View.GONE
}

allLists.addAll(persistence.getAllLists())

setupListsRecyclerView()
setupItemsRecyclerView()
}
Expand Down
21 changes: 11 additions & 10 deletions app/src/main/java/com/lolo/io/onelist/updates/UpdateHelper.kt
Original file line number Diff line number Diff line change
Expand Up @@ -2,29 +2,30 @@ package com.lolo.io.onelist.updates

import com.google.gson.Gson
import com.google.gson.reflect.TypeToken
import com.lolo.io.onelist.model.ItemList
import com.lolo.io.onelist.MainActivity
import com.lolo.io.onelist.R
import com.lolo.io.onelist.model.ItemList
import com.lolo.io.onelist.util.loadJSONFromAsset

object UpdateHelper {
fun applyUpdatePatches(activity: MainActivity, allLists: MutableList<ItemList>) {
fun applyUpdatePatches(activity: MainActivity) {
val persistence = activity.persistence
if (persistence.compat.firstLaunchCompat) {
allLists.addAll(Gson().fromJson(loadJSONFromAsset(activity, "tuto-${activity.getString(R.string.locale)}.json"), object : TypeToken<List<ItemList>>() {
}.type))
persistence.updateListIdsTable(allLists)
allLists.forEach { persistence.saveList(it) }
val tutos : ArrayList<ItemList> = Gson().fromJson(loadJSONFromAsset(activity, "tuto-${activity.getString(R.string.locale)}.json"), object : TypeToken<List<ItemList>>() {
}.type)
persistence.updateListIdsTable(tutos)
tutos.forEach { persistence.saveList(it) }
persistence.compat.firstLaunchCompat = false
} else if (!persistence.compat.firstLaunchCompat && !persistence.version.startsWith("1.")) {
migrateToMaj1Min1(activity, allLists)
persistence.updateListIdsTable(allLists)
allLists.forEach { persistence.saveList(it) }
val lists = arrayListOf<ItemList>()
migrateToMaj1Min1(activity, lists)
persistence.updateListIdsTable(lists)
lists.forEach { persistence.saveList(it) }
ReleaseNote.releasesNotes["1.1"]?.show(activity)
} else if (persistence.version.startsWith("1.1")) { //1.1 to 1.2
ReleaseNote.releasesNotes["1.2"]?.show(activity)
}
}

private fun migrateToMaj1Min1(activity: MainActivity, allLists: MutableList<ItemList>) = allLists.addAll(activity.persistence.compat.allListsCompat)
private fun migrateToMaj1Min1(activity: MainActivity, lists: MutableList<ItemList>) = lists.addAll(activity.persistence.compat.allListsCompat)
}

0 comments on commit 4f43893

Please sign in to comment.