应用程序在首次启动时终止并删除共享首选项



我搜索了很多,但找不到这个真正奇怪问题的解决方案:

安装后首次启动应用程序时。它保持完美工作一分钟,然后关闭。在我再次启动之后,我发现擦除了一分钟内创建的所有数据(sharedPreferences sqlite数据),但是该应用程序不再关闭并且它正常起作用(仅在启动应用程序时,问题才会发生安装后第一次)

我无法弄清楚问题的原因,因为在Android Studio上都没有显示错误(运行部分上显示的只是"应用程序终止")。

  • 我认为这与活动中的代码无关(最初启动的活动都无关紧要)

这是logcat

02-16 16:03:56.965 987-1456/? I/AudioService: getStreamVolume 3 index 0
02-16 16:03:56.975 28996-3478/? W/art: Suspending all threads took: 6.923ms
02-16 16:03:57.055 987-1108/? E/BackupManagerService: Timeout restoring application com.myapp.xxxx
02-16 16:03:57.055 987-1108/? V/ApplicationPolicy: isApplicationStateBlocked userId 0 pkgname com.myapp.xxxx
02-16 16:03:57.065 987-1108/? I/ActivityManager: Force stopping com.myapp.xxxx appid=10796 user=0: clear data
02-16 16:03:57.065 987-1108/? I/ActivityManager: Killing 3100:com.myapp.xxxx /u0a796 (adj 0): stop com.myapp.xxxx cause clear data
02-16 16:03:57.065 987-1108/? D/ActivityManager: cleanUpApplicationRecord -- 3100
02-16 16:03:57.065 987-1108/? W/ActivityManager: Force removing ActivityRecord{d2836da u0 com.myapp.xxxx/.WelcomeActivity t1689}: app died, no saved state
02-16 16:03:57.075 987-1108/? E/JavaBinder: !!! FAILED BINDER TRANSACTION !!!
02-16 16:03:57.095 18814-18828/? I/art: Background partial concurrent mark sweep GC freed 83287(4MB) AllocSpace objects, 92(4MB) LOS objects, 23% free, 25MB/33MB, paused 2.146ms total 343.743ms
02-16 16:03:57.105 987-1108/? D/InputDispatcher: Focus left window: 3100
02-16 16:03:57.125 255-742/? I/SurfaceFlinger: id=3653 Removed XelcomeActi (4/7)
02-16 16:03:57.125 255-6235/? I/SurfaceFlinger: id=3653 Removed XelcomeActi (-2/7)
02-16 16:03:57.135 987-1108/? D/InputDispatcher: Focused application released
02-16 16:03:57.135 987-1018/? E/JavaBinder: !!! FAILED BINDER TRANSACTION !!!

对于任何可能遇到同样问题的人:应用程序停止的原因是backupmanagerservice如logcat显示:

E/BackupManagerService: Timeout restoring application com.myapp.xxxx
V/ApplicationPolicy: isApplicationStateBlocked userId 0 pkgname com.myapp.xxxx
I/ActivityManager: Force stopping com.myapp.xxxx appid=10796 user=0: clear data
I/ActivityManager: Killing 3100:com.myapp.xxxx /u0a796 (adj 0): stop com.myapp.xxxx cause clear data
D/ActivityManager: cleanUpApplicationRecord -- 3100
W/ActivityManager: Force removing ActivityRecord{d2836da u0 com.myapp.xxxx/.WelcomeActivity t1689}: app died, no saved state
E/JavaBinder: !!! FAILED BINDER TRANSACTION !!!

我通过在AndroidManifest文件中添加此行来修复它:

android:allowBackup="false"

最新更新