xamarin 每次我转到主屏幕时,Android都会杀死我的应用程序

v7pvogib  于 2023-02-27  发布在  Android
关注(0)|答案(2)|浏览(175)

我观察到以下行为:

  • 如果我通过Recent按钮切换到另一个应用程序,然后切换回我应用程序,一切正常
  • 如果我按下Home按钮,然后从应用程序抽屉中打开应用程序,应用程序将重新启动

Android版本似乎并不重要。相反,安装类型会造成差异。如果我将apk复制到设备上并手动安装,我会得到上述行为。如果我使用Visual Studio并为发布/调试构建,它工作起来没有问题。它应该是相同的apk文件!
Device log在应用程序终止时显示以下日志:

12-03 15:29:36.402 10719 10719 I SomeApp: ================ Xamarin: OnSleep()
12-03 15:29:36.410  1350  3999 E WindowManager: win=Window{cf46d1f u0 com.company.someapp/crc64cf5f37a7af23dc58.MainActivity} destroySurfaces: appStopped=true win.mWindowRemovalAllowed=false win.mRemoveOnExit=false win.mViewVisibility=8 caller=com.android.server.wm.AppWindowToken.destroySurfaces:1248 com.android.server.wm.AppWindowToken.destroySurfaces:1229 com.android.server.wm.AppWindowToken.notifyAppStopped:1284 com.android.server.wm.ActivityRecord.activityStoppedLocked:2776 com.android.server.wm.ActivityTaskManagerService.activityStopped:2512 android.app.IActivityTaskManager$Stub.onTransact:2280 android.os.Binder.execTransactInternal:1056 
12-03 15:29:36.410  1350  3999 I WindowManager: Destroying surface Surface(name=com.company.someapp/crc64cf5f37a7af23dc58.MainActivity$_10719)/@0xe1a35ad called by com.android.server.wm.WindowStateAnimator.destroySurface:1834 com.android.server.wm.WindowStateAnimator.destroySurfaceLocked:733 com.android.server.wm.WindowState.destroySurfaceUnchecked:3642 com.android.server.wm.WindowState.destroySurface:3616 com.android.server.wm.AppWindowToken.destroySurfaces:1248 com.android.server.wm.AppWindowToken.destroySurfaces:1229 com.android.server.wm.AppWindowToken.notifyAppStopped:1284 com.android.server.wm.ActivityRecord.activityStoppedLocked:2776 
12-03 15:29:36.411   820  1120 I Layer   : id=2656 removeFromCurrentState com.company.someapp/crc64cf5f37a7af23dc58.MainActivity$_10719#0 (77)
12-03 15:29:36.413   820  1120 I SurfaceFlinger: id=2656 Removed com.company.someapp/crc64cf5f37a7af23dc58.MainActivity$_10719#0 (77)

AndroidManifest.xml启动应用程序的设置是否错误?我的应用程序使用android:launchMode="singleTop"。我还检查了电池节省,但行为没有改变。RAM使用也正常。这种情况发生在不同的三星设备上。
我怎样才能找出原因呢?

bpzcxfmw

bpzcxfmw1#

是三星启动器的问题,刚安装的是侧面加载的应用,如果安装后点击“打开”就会出现问题,看来是Intent类型和软件包安装程序的问题,应用没有被杀,而a new instance is created(类似的问题,请参阅herehere,并尝试后退按钮!).这取决于如何打开应用程序. Xamarin解决方案发布here不适合我.
因为这是一个小问题,在真实的生活中并不常见,所以解决方案是不要在安装后直接打开应用程序,而是使用应用程序抽屉,然后一切都正常。或者使用其他设备制造商,如LG,它没有这个问题。

dy1byipe

dy1byipe2#

检查您是否已在开发者设置中选中“不保留活动”选项。

相关问题