Prohlížeč používá akci android.intent.action.VIEW, MAIN je pro launcher.
Díky Stene, to jsem si i myslel. Nicméně jak udelám z MAIN ono VIEW. Když to přepíšu a spustím kód, tak mi to hlásí chybu "Error: Default Activity not found". Díky za nakopnutí.
Protože mícháte dva různé intent filtry dohromady:
<activity …>
<!-- Tohle je pro launcher (spouštěč aplikací) -->
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<!-- Tohle je pro prohlížeč -->
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.BROWSABLE"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="myapp" android:host="my.path"/>
</intent-filter>
</activity>
Btw. pokud filtr obsahuje vaše vlastní schéma, je většinou zbytečné filtrovat i podle hostitele (
android:host), protože stejně nikdo jiný to schéma používat nebude. Filtrování podle hostitele (a cesty) se používá spíš pro filtr pro běžná schémata jako
http a
https, kde bez vaší aplikace zobrazíte stránku, odkud se dá stáhnout, a s vaší aplikací spustíte nějakou akci.