Android - запуск действия из командной строки с использованием намерения uri

У меня есть Activity A со следующим фильтром намерений

    <activity
        android:name="com.comp.pac.ActivityA">
        <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="customapp"
                  android:host="show"
                  android:path="/"/>
        </intent-filter>
    </activity>

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

Чтобы проверить, запускает ли IntentUri действие или нет, я пытаюсь запустить намерение, используя следующую команду через терминал:

adb shell am start intent://show/#Intent;scheme=customapp;package=com.comp.pac;end

Я получаю следующую ошибку:

Activity not started, unable to resolve Intent { act=android.intent.action.VIEW dat=intent://show/ flg=0x10000000 }

Вопрос: что-то не так с командой? Если нет, как проще всего проверить, запускает ли URI намерения действие?

Инструкции по использованию команды adb для запуска активности с использованием намеренного uri доступны здесь.


person 500865    schedule 10.01.2014    source источник
comment
adb shell 'am start intent: //// show / # Intent; scheme = customapp; package = com.comp.pac; end' он решит вашу проблему, он запустит вашу активность   -  person Naval Kishor Jha    schedule 06.12.2017


Ответы (3)


Вам нужно использовать "":

adb shell 'am start "intent:#Intent;scheme=customapp;package=com.comp.pac;end"'
person Alex P.    schedule 10.01.2014

введите код здесь Другой способ открыть активность:

$ adb shell am start -W -a android.intent.action.VIEW -d "example://gizmos" com.example.android
person manmohan    schedule 16.04.2018

Другой способ запустить Activity из оболочки:

adb shell am start com.example.hello/.MainActivity

Обратите внимание на "/" после имени package и "." перед именем Activity.

person Hendrix    schedule 29.01.2015