You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hello All, I am using AOSP camera application where settings in camera application has been implemented using ListPreference. I am facing one issue which is crash on theme change (Dark to light or light to Dark).
This is crash logs
E AndroidRuntime: FATAL EXCEPTION: main
E AndroidRuntime: Process: com.android.camera2, PID: 3641
E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.camera2/com.android.camera.settings.CameraSettingsActivity}: java.lang.IllegalStateException: ListPreference requires an entries array and an entryValues array.
E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3431)
E AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3595)
E AndroidRuntime: at android.app.ActivityThread.handleRelaunchActivityInner(ActivityThread.java:5455)
E AndroidRuntime: at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:5361)
E AndroidRuntime: at android.app.servertransaction.ActivityRelaunchItem.execute(ActivityRelaunchItem.java:69)
E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106)
E AndroidRuntime: at android.os.Looper.loop(Looper.java:223)
E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7664)
E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
E AndroidRuntime: Caused by: java.lang.IllegalStateException: ListPreference requires an entries array and an entryValues array.
E AndroidRuntime: at android.preference.ListPreference.onPrepareDialogBuilder(ListPreference.java:258)
E AndroidRuntime: at android.preference.DialogPreference.showDialog(DialogPreference.java:331)
E AndroidRuntime: at android.preference.DialogPreference.onRestoreInstanceState(DialogPreference.java:514)
E AndroidRuntime: at android.preference.ListPreference.onRestoreInstanceState(ListPreference.java:324)
E AndroidRuntime: at android.preference.Preference.dispatchRestoreInstanceState(Preference.java:2066)
E AndroidRuntime: at android.preference.PreferenceGroup.dispatchRestoreInstanceState(PreferenceGroup.java:337)
E AndroidRuntime: at android.preference.PreferenceGroup.dispatchRestoreInstanceState(PreferenceGroup.java:337)
E AndroidRuntime: at android.preference.Preference.restoreHierarchyState(Preference.java:2048)
E AndroidRuntime: at android.preference.PreferenceFragment.onActivityCreated(PreferenceFragment.java:215)
E AndroidRuntime: at android.app.Fragment.performActivityCreated(Fragment.java:2514)
E AndroidRuntime: at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1323)
E AndroidRuntime: at android.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1581)
E AndroidRuntime: at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1642)
E AndroidRuntime: at android.app.FragmentManagerImpl.dispatchMoveToState(FragmentManager.java:3052)
E AndroidRuntime: at android.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:3004)
E AndroidRuntime: at android.app.FragmentController.dispatchActivityCreated(FragmentController.java:184)
E AndroidRuntime: at android.app.Activity.performCreate(Activity.java:8045)
E AndroidRuntime: at android.app.Activity.performCreate(Activity.java:8021)
E AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3404)
The text was updated successfully, but these errors were encountered:
Hello All, I am using AOSP camera application where settings in camera application has been implemented using ListPreference. I am facing one issue which is crash on theme change (Dark to light or light to Dark).
One important - In AOSP camera application , there is no change on screen , when we change the theme. So make it compatible with theme change , we have changed the style of CameraSettingsActivity.
In this file change has been done
https://android.googlesource.com/platform/packages/apps/Camera2/+/refs/heads/main/res/values-v21/styles.xml#42
Changed the style parent
Old Code
<style name="Theme.CameraSettings" parent="@android:style/Theme.Material.Light.DarkActionBar"> true @color/main_color_global </style>New Code
<style name="Theme.CameraSettings" parent="@android:style/Theme.DeviceDefault.DayNight"> true @color/main_color_global </style>Same is done for Theme.Camera and Camera.ActionBar
This is code file
https://android.googlesource.com/platform/packages/apps/Camera2/+/refs/heads/main/src/com/android/camera/settings/CameraSettingsActivity.java
This is crash logs
E AndroidRuntime: FATAL EXCEPTION: main
E AndroidRuntime: Process: com.android.camera2, PID: 3641
E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.camera2/com.android.camera.settings.CameraSettingsActivity}: java.lang.IllegalStateException: ListPreference requires an entries array and an entryValues array.
E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3431)
E AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3595)
E AndroidRuntime: at android.app.ActivityThread.handleRelaunchActivityInner(ActivityThread.java:5455)
E AndroidRuntime: at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:5361)
E AndroidRuntime: at android.app.servertransaction.ActivityRelaunchItem.execute(ActivityRelaunchItem.java:69)
E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106)
E AndroidRuntime: at android.os.Looper.loop(Looper.java:223)
E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7664)
E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
E AndroidRuntime: Caused by: java.lang.IllegalStateException: ListPreference requires an entries array and an entryValues array.
E AndroidRuntime: at android.preference.ListPreference.onPrepareDialogBuilder(ListPreference.java:258)
E AndroidRuntime: at android.preference.DialogPreference.showDialog(DialogPreference.java:331)
E AndroidRuntime: at android.preference.DialogPreference.onRestoreInstanceState(DialogPreference.java:514)
E AndroidRuntime: at android.preference.ListPreference.onRestoreInstanceState(ListPreference.java:324)
E AndroidRuntime: at android.preference.Preference.dispatchRestoreInstanceState(Preference.java:2066)
E AndroidRuntime: at android.preference.PreferenceGroup.dispatchRestoreInstanceState(PreferenceGroup.java:337)
E AndroidRuntime: at android.preference.PreferenceGroup.dispatchRestoreInstanceState(PreferenceGroup.java:337)
E AndroidRuntime: at android.preference.Preference.restoreHierarchyState(Preference.java:2048)
E AndroidRuntime: at android.preference.PreferenceFragment.onActivityCreated(PreferenceFragment.java:215)
E AndroidRuntime: at android.app.Fragment.performActivityCreated(Fragment.java:2514)
E AndroidRuntime: at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1323)
E AndroidRuntime: at android.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1581)
E AndroidRuntime: at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1642)
E AndroidRuntime: at android.app.FragmentManagerImpl.dispatchMoveToState(FragmentManager.java:3052)
E AndroidRuntime: at android.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:3004)
E AndroidRuntime: at android.app.FragmentController.dispatchActivityCreated(FragmentController.java:184)
E AndroidRuntime: at android.app.Activity.performCreate(Activity.java:8045)
E AndroidRuntime: at android.app.Activity.performCreate(Activity.java:8021)
E AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3404)
The text was updated successfully, but these errors were encountered: