#android
#Android
Вопрос:
Я использую следующий код в файле манифеста Android, но он не открывает приложение.
<activity
android:name="ActivityIntroScreen"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<data android:scheme="market" android:host="details" android:path="" />
<data android:scheme="http" android:host="play.google.com" android:pathPattern="/store/apps/details?id=.*" />
<data android:scheme="https" android:host="play.google.com" android:pathPattern="/store/apps/details?id=.*" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
Где ошибка …??
Комментарии:
1. я думаю, что это связано с более чем одним указанным действием…
2. Удалите
<category android:name="android.intent.category.BROWSABLE" />
и попробуйте..3. да, это тоже не работает
4. Не могли бы вы, пожалуйста, попробовать после закомментирования 2-го фильтра намерений… Это работает???
Ответ №1:
вам придется использовать отдельные фильтры намерений для каждой схемы. взгляните сюда: https://github.com/ligi/PassAndroid/blob/master/src/main/AndroidManifest.xml
Ответ №2:
Это что-то в этом блоке:
<intent-filter>
<data android:scheme="market" android:host="details" android:path="" />
<data android:scheme="http" android:host="play.google.com" android:pathPattern="/store/apps/details?id=.*" />
<data android:scheme="https" android:host="play.google.com" android:pathPattern="/store/apps/details?id=.*" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
Без этого блока он будет работать на 100%. Просто используйте процесс исключения. 🙂