Chciałbym móc monitować moją aplikację o otwarcie łącza, gdy użytkownik kliknie adres URL o danym wzorcu, zamiast zezwalać przeglądarce na jego otwarcie. Może to mieć miejsce, gdy użytkownik znajduje się na stronie internetowej w przeglądarce, w kliencie poczty e-mail lub w widoku WebView w świeżo stworzonej aplikacji.
Na przykład kliknij link do YouTube z dowolnego miejsca w telefonie, a będziesz mieć możliwość otwarcia aplikacji YouTube.
Jak mogę to osiągnąć dla mojej własnej aplikacji?
Odpowiedzi:
Użyj widoku android.intent.action.VIEW z kategorii android.intent.category.BROWSABLE .
Z AndroidManifest.xml aplikacji Photostream Romain Guy ,
Raz wewnątrz jesteś w działalności , trzeba spojrzeć na działania, a następnie zrobić coś z adresem URL już został wydany.
Intent.getData()
Metoda daje Uri.Należy jednak zauważyć, że ta aplikacja staje się nieco przestarzała (1.2), więc może się okazać, że istnieją lepsze sposoby na osiągnięcie tego.
źródło
Niektóre biblioteki automatycznie analizują parametry z adresu URL.
Jak na przykład
https://github.com/airbnb/DeepLinkDispatch
&&
https://github.com/mzule/ActivityRouter
Ten ostatni jest napisany przeze mnie. Które mogą analizować parametry do danego typu, nie zawsze typu String.
Przykład
źródło
źródło