2017-06-05 245 views
0

生成回來深層鏈接棧基本上,我嘗試這兩個教程混合:從電子郵件地址

我想要做的是推出一項具體活動我的應用程序時,用戶點擊電子郵件中的網址。當活動啓動時,我希望用戶能夠按下並轉到父級活動,就好像用戶在正常旅程中拋出應用後在此頁面上有土地一樣。

我知道如何打開特定的活動,但我不知道如何生成backstack。在這個例子中,他們能夠管理後臺堆棧,因爲深度鏈接來自應用程序本身生成的通知,所以他們可以創建一個待定的意圖。在我的情況下,鏈接來自電子郵件,所以我不能這樣做。

有什麼想法?

+0

你讀過這個:https://developer.android.com/training/implementing-navigation/temporal.html?他們建議使用'startActivities'來爲深層鏈接提供反向堆棧。 – RadekJ

+0

這與我上面提到的鏈接類似。該示例用於通知。由於通知是由應用程序本身生成的,因此您可以創建待定的意圖。但是,如果您的意圖過濾器對url進行響應,則沒有未定義的意圖定義。他們在談論NavUtils,你認爲我應該使用它嗎? – Eselfar

+0

在我的項目中,我沒有處理傳入意圖的內容視圖。這個'RouterActivity'處理意圖,並決定應該用'startActivities'開始哪些活動,然後用'finish()'完成自己的活動。由於此活動沒有任何佈局,並且已在'onCreate'中完成,用戶不知道在所需的任何活動之前已開始任何活動。 – RadekJ

回答

1

創建沒有內容視圖的活動來處理傳入的意圖。這個RouterActivity處理意圖,並決定什麼活動應該開始startActivities(TaskStackBuilder),然後它完成與finish()本身。

RouterActivity應該使用主題:@android:style/Theme.NoDisplay(使用Activity代替AppCompatActivity),應該沒有設置任何內容視圖 所以用戶不會有任何線索,有任何活動開始前所需的一個。

相關問題