Ответ 1
Попробуйте следующее:
Сделайте ваши ссылки похожими на:
<a href="intent:#Intent;action=my_action;end">Link to my stuff</a>
Также посмотрите Запуск пользовательского приложения Android от браузера android
Я знаю, что для открытия приложения Android по ссылке внутри веб-страницы мы должны написать следующее в AndroidManifest.xml
:
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="my_scheme" android:host="my_host" />
</intent-filter>
Проблема в том, что я написал это следующим образом:
<intent-filter>
<action android:name="my_action"/>
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="my_scheme" android:host="my_host" />
</intent-filter>
Я не добавил android.intent.action.VIEW
и вместо этого добавил свое собственное действие, которое я сделал. Я не могу изменить его, потому что версия уже выпущена.
Вопрос в том,
если есть способ заставить приложение работать из JavaScript или простой HTML-страницы, возможно, определив конкретное действие на странице?
Спасибо,
Паз.
РЕШИТЬ:
Благодаря Дэвиду я нашел решение:
<a href="intent://my_host#Intent;scheme=my_scheme;action=my_action;end">Link to my stuff</a>
Попробуйте следующее:
Сделайте ваши ссылки похожими на:
<a href="intent:#Intent;action=my_action;end">Link to my stuff</a>
Также посмотрите Запуск пользовательского приложения Android от браузера android
AndroidMainfest объявляет:
<activity android:name="...">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="hostName"
android:path="path"
android:scheme="schemeName" />
</intent-filter>
</activity>
вы можете позволить вызвать
<a href = "schemeName://hostName/path">
или добавить param аналогичный url в brower
<a href = "schemeName://hostName/path?id=1&name=mark">
Один способ, как он сказал, и другой способ, вызывая метод js, код следующим образом:
function openAActivity(){
window.location = "schemeName://hostName/path"
}
этот метод отправит Android-намерение начать указанное действие.
Первый способ:
<html><head></head><body>
<iframe src="YourApp://profile/blabla" width="1px" height="1px" scrolling="no" frameborder="0"></iframe>
<script>
setTimeout(function() {
window.location = "http://YourSite.com/profile/blabla"; }, 4000
);
</script>
</body>
</html>
ИЛИ
Второй способ:
fooobar.com/info/193143/...