Вопрос

Есть ли разные шаги для регистрации активности Android в качестве просмотра на Android 2.3 (уровень API) и более ранние версии?

Я настроил активность с помощью фильтра Intent, который использует пользовательскую схему:

<intent-filter>
    <action name="android.intent.action.VIEW"/>
    <category name="android.intent.category.DEFAULT"/>
    <category name="android.intent.category.BROWSABLE"/>
    <data scheme="@string/myCallbackProtocol"/>
</intent-filter>
.

на физическом устройстве, запущенном 2.3, и с симулятором SDK, установленным на 2.3, приложение браузера направляет ссылки, используя мой пользовательский протокол к приложению.

Тем не менее, если я окажут обратно на симулятор до 2.2 или 2.1, то браузер не перенаправляется, а вместо этого указывает на сервер не может быть найден.У меня нет фактического устройства, выполняющего эти уровни API.

Я хотел бы выпустить свое приложение, чтобы он совместим с устройствами, работающими 2.1 и больше.Я не прав, чтобы предположить, что это должно быть возможно?Согласно Документы Android Intent.CATEGORY_BROWSABLE были доступны с 1.0. .

Спасибо!

Это было полезно?

Решение 2

Solved. BROWSABLE works back at least as far as Android 2.1. Before 2.3 it seems that loading the <data scheme=""> from a string resource leads to the Activity not being registered correctly.

Changing the @string/ reference to a hard-coded value yields the desired result.

<intent-filter>
    <action name="android.intent.action.VIEW"/>
    <category name="android.intent.category.DEFAULT"/>
    <category name="android.intent.category.BROWSABLE"/>
    <data scheme="my-custom-protocol"/>
</intent-filter>

Другие советы

I have had no problems using BROWSABLE going back at least to 2.1 if not earlier. However, I have not implemented a custom scheme, let alone one defined in a string resource. Here is a sample project demonstrating the use of BROWSABLE.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top