我已經使用意向過濾器爲我的應用程序設置了自定義URL方案。當我的WebView中的URL更改爲我的自定義方案(mockup:// pagechange)時,intent篩選器正確地篩選了我的應用程序的意圖,啓動了我的活動的新實例。然而,我真正想要發生的是意圖過濾器在現有活動內部運行一段代碼,而不是啓動一項新活動。這是可能的,如果是這樣,我該如何設置?如果沒有,當我的WebView中的URL改變爲以'mockup'開始的任何東西時,如何完成運行代碼的任務的任何其他想法?在不啓動新活動的情況下在URL更改(自定義方案)上運行代碼
我試圖在意圖過濾器中使用其他操作,但我試過(RUN和ATTACH_DATA)導致「網頁不可用」頁面在URL更改時顯示在我的WebView中。此外,我在這裏找到的所有意圖過濾器/自定義方案問題都涉及如何使用自定義方案開始一個帶有網址的新活動 - 這使得很難搜索相反的結果。
謝謝!
的launchMode選項當然似乎像什麼,我想做的事情(不啓動活動的新實例,而只是調用一個方法 - onNewIntent在()這個案例)。但我在哪裏設置標誌?我沒有明確地創建一個新的活動,我試圖將我的WebView上的URL更改的動作捕獲到自定義方案 - 從未實際設置代碼中的Intent對象。 –
你當然是對的。只需創建一個新的活動,其唯一目的是開始其他活動。因此,在新的活動中,不要顯示任何用戶界面,只需在處理意圖後調用startActivity並將其轉發給您的單個頂級活動即可。 – dhaag23