我觀察到以下行為:
- 如果我通過
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使用率也還可以。這發生在不同的三星設備上。
我怎樣才能找出造成這種情況的原因?
uj5u.com熱心網友回復:
當您新安裝側載應用程式時,這是三星啟動器的問題。如果您在安裝后點擊“打開”,則會出現問題。似乎與Intent型別和包安裝程式有關。該應用程式并沒有被殺死,而是創建了一個新實體(請參閱此處或此處了解類似問題并嘗試后退按鈕!)。這取決于應用程式的打開方式。此處發布的 Xamarin 解決方案對我不起作用。
因為這更像是一個小問題,在現實生活中并不經常發生,所以解決方案是在安裝后不直接打開顯示對話框的應用程式。而是使用應用程式抽屜,然后一切正常。或者使用其他設備制造商,如 LG,沒有這個問題。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/382426.html
