2011-09-14 15 views
11

Próbuję dowiedzieć się, jak uruchomić aplikację z adresu URL i jak mam napisać ten adres URL.O uruchomieniu aplikacji na Androida z adresu URL

Mam następujący kod w moim AndroidManifest:

<activity android:name=".MyActivity"> 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN"></action> 
     <action android:name="android.intent.action.VIEW"></action> 
     <category android:name="android.intent.category.LAUNCHER"></category> 
     <category android:name="android.intent.category.DEFAULT"></category> 
     <category android:name="android.intent.category.BROWSABLE"></category> 
     <data android:host="my.app" android:scheme="http"></data> 
    </intent-filter> 
</activity> 

użyłem URL jak wyjaśniono w this answer, ale nic się nie dzieje.

Proszę dać mi znać, jeśli moje intencje są dobrze napisane i jak mam napisać URL, który wywołuje tę aplikację, i proszę pamiętać, że muszę zadzwonić do mojej "Głównej" Aktywności.

Odpowiedz

26

Musisz mieć dwa elementy <intent-filter> dla tego <activity>. Jedna będzie dla MAIN i LAUNCHER. Drugi będzie dla VIEW, BROWSABLE/DEFAULT i swoją <data> element:

<activity android:name=".MyActivity"> 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN"></action> 
     <category android:name="android.intent.category.LAUNCHER"></category> 
    </intent-filter> 
    <intent-filter> 
     <action android:name="android.intent.action.VIEW"></action> 
     <category android:name="android.intent.category.DEFAULT"></category> 
     <category android:name="android.intent.category.BROWSABLE"></category> 
     <data android:host="my.app" android:scheme="http"></data> 
    </intent-filter> 
</activity> 

Następnie http://my.app powinien uruchomić swoją działalność.

+0

thx za komentarz, ale to nie działa dla mnie. Próbowałem pisać ten URL w przeglądarce, ale moja aplikacja się nie uruchamia. –

+0

@FelipeDev: Oto przykładowy projekt demonstrujący tę technikę: https://github.com/commonsguy/cw-advandroid/tree/master/Introspection/URLHandler – CommonsWare

+0

@FelipeDev: tutaj jest adres URL strony, którą możesz odwiedzić w przeglądarce, która wywołuje linki, które uruchomią tę aplikację: http://commonsware.com/sample – CommonsWare

Powiązane problemy