saulhdev / ZimLX

Open Source and free launcher for Android
Other
151 stars 26 forks source link

App crashes on desktop #46

Open Pablo-Balaudo opened 5 years ago

Pablo-Balaudo commented 5 years ago

When I updated the app to the latest version, it started crashing whenever I wanted to go to the desktop.

I haven't found a way to reproduce it reliably since it happens at random.

Build version: 0.6.2b Build date: 1980-01-01 00:00:00 Current date: 2019-06-15 06:39:28 Device: Motorola Moto G (4) OS: Android 7

Stack trace:
java.lang.ClassCastException: androidx.drawerlayout.widget.DrawerLayout cannot be cast to com.android.launcher3.LauncherRootView at com.android.launcher3.Launcher.getRootView(Launcher.java:1339) at com.android.launcher3.Launcher.reapplyUi(Launcher.java:536) at com.android.launcher3.Launcher.onConfigurationChanged(Launcher.java:522) at android.app.ActivityThread.performConfigurationChanged(ActivityThread.java:4707) at android.app.ActivityThread.performConfigurationChangedForActivity(ActivityThread.java:4618) at android.app.ActivityThread.handleActivityConfigurationChanged(ActivityThread.java:4825) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1610) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6123) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:757)

mmm4m5m commented 5 years ago

The same here! It crash EVERY time when i press "home" button or when I start ZimLX. Maybe problem with old/new settings format (string/integer). I did not upgrade recently and maybe the previous version was 0.4.4. OS: Android 7

Build version: 0.6.2b Build date: 1980-01-01 00:00:00 Current date: 2019-06-19 08:46:42 Device: Acer B3-A40

Stack trace:
java.lang.RuntimeException: Unable to start activity ComponentInfo{org.zimmob.zimlx/org.zimmob.zimlx.ZimLauncher}: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2724) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2789) at android.app.ActivityThread.-wrap12(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1527) at android.os.Handler.dispatchMessage(Handler.java:110) at android.os.Looper.loop(Looper.java:203) at android.app.ActivityThread.main(ActivityThread.java:6251) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924) Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer at android.app.SharedPreferencesImpl.getInt(SharedPreferencesImpl.java:242) at org.zimmob.zimlx.ZimPreferences$IntPref.onGetValue(ZimPreferences.kt:452) at org.zimmob.zimlx.ZimPreferences$IntPref.onGetValue(ZimPreferences.kt:450) at org.zimmob.zimlx.ZimPreferences$PrefDelegate.getValue(ZimPreferences.kt:545) at org.zimmob.zimlx.settings.GridSize.getNumRowsPref(GridSize.kt) at org.zimmob.zimlx.settings.GridSize.applyNumRows(GridSize.kt:31) at org.zimmob.zimlx.settings.GridSize.(GridSize.kt:23) at org.zimmob.zimlx.ZimPreferences$dockGridSizeDelegate$1.invoke(ZimPreferences.kt:94) at org.zimmob.zimlx.ZimPreferences$dockGridSizeDelegate$1.invoke(ZimPreferences.kt:32) at org.zimmob.zimlx.ZimPreferences$ResettableLazy.getValue(ZimPreferences.kt:595) at org.zimmob.zimlx.ZimPreferences.getDockGridSize(ZimPreferences.kt) at com.android.launcher3.Launcher.onCreate(Launcher.java:328) at com.google.android.apps.nexuslauncher.NexusLauncherActivity.onCreate(NexusLauncherActivity.java:27) at org.zimmob.zimlx.ZimLauncher.onCreate(ZimLauncher.java:57) at android.app.Activity.performCreate(Activity.java:6683) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2677) ... 9 more

mmm4m5m commented 5 years ago

I am able to open ZimLX settings from Android Settings / Apps / Zim Launcher. There I clicked app settings icon. I am NOT able to see "Dock", "App drawer" and "About" because it crash. Here the error when i click "Dock": OS: Android 7

Build version: 0.6.2b Build date: 1980-01-01 00:00:00 Current date: 2019-06-19 09:01:43 Device: Acer B3-A40

Stack trace:
java.lang.RuntimeException: Unable to start activity ComponentInfo{org.zimmob.zimlx/org.zimmob.zimlx.settings.ui.SettingsActivity}: android.view.InflateException: Binary XML file line #80: Error inflating class org.zimmob.zimlx.preferences.DockGridSizePreference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2724) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2789) at android.app.ActivityThread.-wrap12(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1527) at android.os.Handler.dispatchMessage(Handler.java:110) at android.os.Looper.loop(Looper.java:203) at android.app.ActivityThread.main(ActivityThread.java:6251) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924) Caused by: android.view.InflateException: Binary XML file line #80: Error inflating class org.zimmob.zimlx.preferences.DockGridSizePreference at androidx.preference.PreferenceInflater.createItem(PreferenceInflater.java:266) at androidx.preference.PreferenceInflater.createItemFromTag(PreferenceInflater.java:295) at androidx.preference.PreferenceInflater.rInflate(PreferenceInflater.java:362) at androidx.preference.PreferenceInflater.inflate(PreferenceInflater.java:170) at androidx.preference.PreferenceInflater.inflate(PreferenceInflater.java:120) at androidx.preference.PreferenceManager.inflateFromResource(PreferenceManager.java:138) at androidx.preference.PreferenceFragmentCompat.addPreferencesFromResource(PreferenceFragmentCompat.java:429) at org.zimmob.zimlx.settings.ui.SettingsActivity$SubSettingsFragment.onCreatePreferences(SettingsActivity.java:627) at androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java:228) at org.zimmob.zimlx.settings.ui.SettingsActivity$BaseFragment.onCreate(SettingsActivity.java:360) at org.zimmob.zimlx.settings.ui.SettingsActivity$SubSettingsFragment.onCreate(SettingsActivity.java:557) at androidx.fragment.app.Fragment.performCreate(Fragment.java:2414) at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManager.java:1418) at androidx.fragment.app.FragmentTransition.addToFirstInLastOut(FragmentTransition.java:1195) at androidx.fragment.app.FragmentTransition.calculateFragments(FragmentTransition.java:1078) at androidx.fragment.app.FragmentTransition.startTransitions(FragmentTransition.java:117) at androidx.fragment.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2408) at androidx.fragment.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2366) at androidx.fragment.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2273) at androidx.fragment.app.FragmentManagerImpl.dispatchStateChange(FragmentManager.java:3273) at androidx.fragment.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:3229) at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:201) at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:620) at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:178) at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1248) at android.app.Activity.performStart(Activity.java:6700) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2687) ... 9 more Caused by: java.lang.reflect.InvocationTargetException at java.lang.reflect.Constructor.newInstance0(Native Method) at java.lang.reflect.Constructor.newInstance(Constructor.java:430) at androidx.preference.PreferenceInflater.createItem(PreferenceInflater.java:259) ... 35 more Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer at android.app.SharedPreferencesImpl.getInt(SharedPreferencesImpl.java:242) at org.zimmob.zimlx.ZimPreferences$IntPref.onGetValue(ZimPreferences.kt:452) at org.zimmob.zimlx.ZimPreferences$IntPref.onGetValue(ZimPreferences.kt:450) at org.zimmob.zimlx.ZimPreferences$PrefDelegate.getValue(ZimPreferences.kt:545) at org.zimmob.zimlx.settings.GridSize.getNumRowsPref(GridSize.kt) at org.zimmob.zimlx.settings.GridSize.applyNumRows(GridSize.kt:31) at org.zimmob.zimlx.settings.GridSize.(GridSize.kt:23) at org.zimmob.zimlx.ZimPreferences$dockGridSizeDelegate$1.invoke(ZimPreferences.kt:94) at org.zimmob.zimlx.ZimPreferences$dockGridSizeDelegate$1.invoke(ZimPreferences.kt:32) at org.zimmob.zimlx.ZimPreferences$ResettableLazy.getValue(ZimPreferences.kt:595) at org.zimmob.zimlx.ZimPreferences.getDockGridSize(ZimPreferences.kt) at org.zimmob.zimlx.preferences.DockGridSizePreference.(DockGridSizePreference.kt:25) ... 38 more

mmm4m5m commented 5 years ago

I am able to open ZimLX settings from Android Settings / Apps / Zim Launcher. There I clicked app settings icon. Here the error when i click "App drawer":

Build version: 0.6.2b Build date: 1980-01-01 00:00:00 Current date: 2019-06-19 09:02:47 Device: Acer B3-A40

Stack trace:
java.lang.RuntimeException: Unable to start activity ComponentInfo{org.zimmob.zimlx/org.zimmob.zimlx.settings.ui.SettingsActivity}: android.view.InflateException: Binary XML file line #29: Error inflating class org.zimmob.zimlx.preferences.DrawerGridSizePreference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2724) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2789) at android.app.ActivityThread.-wrap12(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1527) at android.os.Handler.dispatchMessage(Handler.java:110) at android.os.Looper.loop(Looper.java:203) at android.app.ActivityThread.main(ActivityThread.java:6251) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924) Caused by: android.view.InflateException: Binary XML file line #29: Error inflating class org.zimmob.zimlx.preferences.DrawerGridSizePreference at androidx.preference.PreferenceInflater.createItem(PreferenceInflater.java:266) at androidx.preference.PreferenceInflater.createItemFromTag(PreferenceInflater.java:295) at androidx.preference.PreferenceInflater.rInflate(PreferenceInflater.java:362) at androidx.preference.PreferenceInflater.rInflate(PreferenceInflater.java:364) at androidx.preference.PreferenceInflater.inflate(PreferenceInflater.java:170) at androidx.preference.PreferenceInflater.inflate(PreferenceInflater.java:120) at androidx.preference.PreferenceManager.inflateFromResource(PreferenceManager.java:138) at androidx.preference.PreferenceFragmentCompat.addPreferencesFromResource(PreferenceFragmentCompat.java:429) at org.zimmob.zimlx.settings.ui.SettingsActivity$SubSettingsFragment.onCreatePreferences(SettingsActivity.java:627) at androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java:228) at org.zimmob.zimlx.settings.ui.SettingsActivity$BaseFragment.onCreate(SettingsActivity.java:360) at org.zimmob.zimlx.settings.ui.SettingsActivity$SubSettingsFragment.onCreate(SettingsActivity.java:557) at androidx.fragment.app.Fragment.performCreate(Fragment.java:2414) at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManager.java:1418) at androidx.fragment.app.FragmentTransition.addToFirstInLastOut(FragmentTransition.java:1195) at androidx.fragment.app.FragmentTransition.calculateFragments(FragmentTransition.java:1078) at androidx.fragment.app.FragmentTransition.startTransitions(FragmentTransition.java:117) at androidx.fragment.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2408) at androidx.fragment.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2366) at androidx.fragment.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2273) at androidx.fragment.app.FragmentManagerImpl.dispatchStateChange(FragmentManager.java:3273) at androidx.fragment.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:3229) at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:201) at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:620) at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:178) at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1248) at android.app.Activity.performStart(Activity.java:6700) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2687) ... 9 more Caused by: java.lang.reflect.InvocationTargetException at java.lang.reflect.Constructor.newInstance0(Native Method) at java.lang.reflect.Constructor.newInstance(Constructor.java:430) at androidx.preference.PreferenceInflater.createItem(PreferenceInflater.java:259) ... 36 more Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer at android.app.SharedPreferencesImpl.getInt(SharedPreferencesImpl.java:242) at org.zimmob.zimlx.ZimPreferences$IntPref.onGetValue(ZimPreferences.kt:452) at org.zimmob.zimlx.ZimPreferences$IntPref.onGetValue(ZimPreferences.kt:450) at org.zimmob.zimlx.ZimPreferences$PrefDelegate.getValue(ZimPreferences.kt:545) at org.zimmob.zimlx.settings.GridSize.getNumRowsPref(GridSize.kt) at org.zimmob.zimlx.settings.GridSize.applyNumRows(GridSize.kt:31) at org.zimmob.zimlx.settings.GridSize.(GridSize.kt:23) at org.zimmob.zimlx.ZimPreferences$drawerGridSizeDelegate$1.invoke(ZimPreferences.kt:116) at org.zimmob.zimlx.ZimPreferences$drawerGridSizeDelegate$1.invoke(ZimPreferences.kt:32) at org.zimmob.zimlx.ZimPreferences$ResettableLazy.getValue(ZimPreferences.kt:595) at org.zimmob.zimlx.ZimPreferences.getDrawerGridSize(ZimPreferences.kt) at org.zimmob.zimlx.preferences.DrawerGridSizePreference.(DrawerGridSizePreference.kt:7) ... 39 more

mmm4m5m commented 5 years ago

I am not able to downgrade!

The only versions I see in f-droid are 0.6.2b and 0.4.4. I assume the previous version I had was 0.4.4. Trying to downgrade to 0.4.4 using f-droid, the error messages is: "Error installing Zim Launcher. Failed to install due to an unknown error." (Android 7)

Downloaded older versions from github. Trying to downgrade to 0.4.4 or 0.5.2 shows error from package installer: "App not installed. The package appers to be corrupt." (Android 7)

About application crash... I clicked "clear cache" (Android Settings / Apps / Zim Launcher). It did not help, it still crash.

Now the only option I have is "clear data" (Android Settings / Apps / Zim Launcher). Or uninstall and start fresh BUT I will lose all ZimLX settings. I did not make new backup BUT I noticed another bug report - "crash after restore backup". Probably I will not be able to restore settings from backup anyway.

Looks like bad bug. Looks like important. I hope it is fixed soon. I did NOT uninstall yet, I did not "clear data" yet. I can test next version if there is fix. (I do not have "adb" installed and I do not have experience with "adb".)

mmm4m5m commented 5 years ago

I am able to open ZimLX settings from Android Settings / Apps / Zim Launcher. There I clicked app settings icon. Here the error when I click "About": OS: Android 7

Build version: 0.6.2b Build date: 1980-01-01 00:00:00 Current date: 2019-06-19 09:23:59 Device: Acer B3-A40

Stack trace:
java.lang.RuntimeException: Unable to resume activity {org.zimmob.zimlx/org.zimmob.zimlx.settings.ui.MoreInfoActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3506) at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3546) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2795) at android.app.ActivityThread.-wrap12(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1527) at android.os.Handler.dispatchMessage(Handler.java:110) at android.os.Looper.loop(Looper.java:203) at android.app.ActivityThread.main(ActivityThread.java:6251) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924) Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference at net.gsantner.opoc.util.ContextUtils.getResId(ContextUtils.java:104) at net.gsantner.opoc.util.ContextUtils.rstr(ContextUtils.java:119) at net.gsantner.opoc.util.ContextUtils.getPackageName(ContextUtils.java:238) at org.zimmob.zimlx.settings.ui.MoreInfoFragment.doUpdatePreferences(MoreInfoFragment.java:158) at net.gsantner.opoc.preference.GsPreferenceFragmentCompat.onResume(GsPreferenceFragmentCompat.java:236) at androidx.fragment.app.Fragment.performResume(Fragment.java:2498) at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManager.java:1501) at androidx.fragment.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1784) at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManager.java:1852) at androidx.fragment.app.FragmentManagerImpl.dispatchStateChange(FragmentManager.java:3269) at androidx.fragment.app.FragmentManagerImpl.dispatchResume(FragmentManager.java:3241) at androidx.fragment.app.FragmentController.dispatchResume(FragmentController.java:223) at androidx.fragment.app.FragmentActivity.onResumeFragments(FragmentActivity.java:538) at androidx.fragment.app.FragmentActivity.onPostResume(FragmentActivity.java:527) at androidx.appcompat.app.AppCompatActivity.onPostResume(AppCompatActivity.java:172) at android.app.Activity.performResume(Activity.java:6811) at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3477) ... 10 more

saulhdev commented 4 years ago

already fixed in the current build. you can get a copy from #60