[英]Resuming Application on Android with Unity
我正在嘗試使用OnApplicationPause函數在Unity中實現暫停。
當我通過按下主頁按鈕退出我的游戲(在Android上)然后通過活動應用程序列表返回時似乎工作正常,但是當我按下主屏幕上的游戲圖標時,它重新啟動游戲而不是讓我回來。
有沒有辦法解決 ?
對我來說,當我在日志中有一個:android.os.DeadObjectException時,就會發生這種情況。 (意思是申請已經死亡)。
檢查日志中是否包含這樣的內容:
I/ActivityManager( 600): Restarting because process died: ActivityRecord{439f9588 u0 com.mycompany.myapp/com.unity3d.player.UnityPlayerProxyActivity}
W/ActivityManager( 600): Exception when starting activity com.mycompany.myapp/com.unity3d.player.UnityPlayerProxyActivity
W/ActivityManager( 600): android.os.DeadObjectException
W/ActivityManager( 600): at android.os.BinderProxy.transact(Native Method)
W/ActivityManager( 600): at android.app.ApplicationThreadProxy.scheduleLaunchActivity(ApplicationThreadNative.java:759)
W/ActivityManager( 600): at com.android.server.am.ActivityStack.realStartActivityLocked(ActivityStack.java:1120)
W/ActivityManager( 600): at com.android.server.am.ActivityStack.startSpecificActivityLocked(ActivityStack.java:1247)
...如果是這樣,請在日志中進一步查看以查看應用程序死亡的原因。 為了讓我的應用程序免於死亡,我不得不移動意圖過濾器:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
從UnityPlayerProxyActivity到UnityPlayerNativeActivity
它應該恢復到你重返游戲的那一刻。 如果沒有,那么當它從暫停中恢復時,它可能是你的游戲流程自動重啟。
在您的游戲中,嘗試檢查OnApplicationPause的狀態並從那里進行調試。 代碼示例在此主題http://answers.unity3d.com/questions/286939/detecting-when-applicationdidbecomeactive-in-unity.html
根據我的經驗,當您在AndroidManifest.xml文件中沒有所有正確的信息時,會發生這些奇怪的事情。 特別是這一行:
<activity android:name="your_name_here.Activity" android:label="@string/app_name" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:screenOrientation="your_orientation_here_if_needed">
確保“android:configChanges”包含此處的所有內容。 否則為了向您提供更具體的信息,您需要在發生這種情況時提供logcat。
你有沒有檢查Android清單上的啟動模式,並使得像這樣的android:launchMode =“singleTask”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.