Запускать Android-приложение без активности

У меня есть приложение, которое предназначено для работы только как служба (без интерфейса, только в фоновом режиме). У меня нет активности, упомянутой в моем AndroidManifest.xml, но я поставил приемник для запуска приложения при запуске телефона.


    
        
            
            
        
    
    
        
            
        
    

Проблема в том, что когда я разрабатываю (использую Eclipse) приложение, мне нужно часто тестировать свои изменения. Когда я запускаю приложение (когда мой телефон подключен в режиме отладки), у меня появляется сообщение типа

[2011-12-14 00:18:40 - MyApp] Android Launch!
[2011-12-14 00:18:40 - MyApp] adb is running normally.
[2011-12-14 00:18:40 - MyApp] No Launcher activity found!
[2011-12-14 00:18:40 - MyApp] The launch will only sync the application package on the device!
[2011-12-14 00:18:40 - MyApp] Performing sync

Как я могу запускать приложение при запуске, не перезагружая его каждый раз?


Отредактируйте это больше невозможно для Android 3.1 или выше. Источник

24
задан Martin Trigaux 12 April 2012 в 19:09
поделиться

1 ответ

Помимо двух опций, упомянутых EboMike: вы всегда можете отправить широковещательную рассылку BOOT_COMPLETED через командную строку вместо перезагрузки телефона.

Использовать

adb shell am broadcast -a android.intent.action.BOOT_COMPLETED

Это приведет к ситуации, подобной фактической перезагрузке, а также вызовет приемники загрузки любых сторонних приложений. После того, как вы набрали его один раз в терминале, вы обычно можете повторить его, просто нажав клавишу со стрелкой вверх, после чего в большинстве операционных систем происходит возврат. Или вы можете включить его в скрипт, который запускается после переустановки приложения.


Если вы хотите ограничить вещание только вашим приложением, вы также можете указать компонент:

adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -n your.app.packagename/.YourReceiverClassName

Это отправит перезагрузку только вашему ресиверу. Все остальные приложения не называются.

33
ответ дан 28 November 2019 в 23:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: