Поскольку hackbod никогда не давал нам примеры кода, я просто хочу поделиться своим, после того, как я заставил это работать.
Прежде всего, вам нужно определить пользовательское действие в файле манифеста:
<activity
android:name=".activity.MainActivity"
android:label="@string/app_name_full">
<intent-filter>
<action android:name="com.yourpackage.action.OPEN_VIEW"></action>
<category android:name="android.intent.category.DEFAULT"></category>
<category android:name="android.intent.category.BROWSABLE"></category>
</intent-filter>
</activity>
Затем для контента на вашем сайте вам нужно сгенерировать URI из намерения.
Поместите следующий код в свою активность (этот код может быть удален после создания ссылки):
Intent i = new Intent();
i.setAction("com.yourpackage.action.OPEN_VIEW");
i.setPackage("com.yourpackage");
i.putExtra("myextra","anystring");
Log.d(getClass().getSimpleName(), i.toUri(Intent.URI_INTENT_SCHEME));
Чтобы получить Дополнения, добавьте в свое действие следующее, которое может получить пользовательское действие (как определено в манифесте):
final Intent intent = getIntent();
final String action = intent.getAction();
if ("com.yourpackage.action.OPEN_VIEW".equals(action)) {
Log.i(getClass().getSimpleName(), "EXTRA: "+intent.getExtras().getString("myextra"));
}
На вашем сайте (это ранее созданная ссылка):
<a href="intent:#Intent;action=com.yourpackage.action.OPEN_VIEW;package=com.yourpackage;S.myextra=anystring;end">Open App with extra</a>
Надеюсь, это поможет кому-то лучше понять. Пожалуйста, поправьте меня, если я что-то не так понял.