0
當應用在後臺時訪問深層鏈接時,啓動正確的PostActivity
並將其堆疊在調用深層鏈接的活動之上。這是很好和正確的。將鏈接深度鏈接到啓動器/主要活動而不是深層鏈接
如果在點擊深度鏈接時應用程序未在後臺打開,則會打開啓動器活動,而不是與深度鏈接關聯的活動。奇怪的是,如果按下後退按鈕關閉堆疊的發射器活動,並再次點擊深層鏈接,則會啓動正確的PostActivity
。
- 是否有解釋此行爲?
- 這是預期的行爲?
- 我如何始終在點擊深層鏈接而不是啓動器活動時啓動深層鏈接活動?
我的發射活動是:
<activity
android:name=".SplashActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:label="@string/app_name"
android:screenOrientation="sensorPortrait"
android:windowSoftInputMode="adjustPan" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
我deeplinked活動是:
<activity
android:name=".PostActivity"
android:label="@string/app_name"
android:screenOrientation="sensorPortrait"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="@string/deeplink_scheme" />
<data android:host="article" />
<data android:pathPattern=".*" />
</intent-filter>
</activity>
發現這很難相信。 Android本身不會啓動'SplashActivity'。你確定你沒有'PostActivity'中的代碼來檢查應用程序是否已經初始化,如果沒有,重定向到'SplashActivity'?請從'PostActivity.onCreate()'發佈代碼。 –
謝謝。如果它是「預期的行爲」,我猜這個答案可能是我需要的輸入。這可能是你的建議,所以我會在挖掘現有項目之前創建一個新的空白項目來測試「問題」。 – Wex
我嘗試了一個簡單的深層鏈接和兩個活動的新項目,並且一切正常。我的問題必須是針對項目的,而不是一切正常的行爲。 – Wex