можно ли использовать оболочку adb для отправки команд в мое приложение - PullRequest
5 голосов
/ 28 апреля 2011

Я хочу найти способ создания команд, которые я могу отправить в свое приложение, используя оболочку adb или аналогичную. Таким образом, я могу вносить небольшие изменения в свою программу, не перезагружая приложение каждый раз, когда я что-либо меняю.

Есть ли способ открыть оболочку adb и отправить команду работающему приложению?

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

Если бы я мог сделать это с помощью инструментов командной строки, это было бы здорово. в противном случае, что было бы хорошим способом пойти по этому поводу?

Ответы [ 2 ]

5 голосов
/ 28 апреля 2011

В оболочке adb введите am.Вы можете начать деятельность и услуги, а также отправлять намерения вещания.Никакие аргументы не будут печатать информацию об использовании.

С хост-машины вы можете сделать adb shell am <command>, если хотите вызвать это из скриптов.

3 голосов
/ 28 апреля 2011

Параметр adb shell am, вероятно, является самым чистым / лучшим / самым удивительным вариантом, но в вашем приложении может быть тема, проверяющая наличие определенного файла на SD-карте.Что-то вроде (НЕ ИСПОЛЬЗУЙТЕ ЭТОТ КОД БЕЗ СЕРЬЕЗНЫХ МОДИФИКАЦИЙ):

public void run()
{
   File f = new File("/sdcard/appcommands");
   while(!stop){
      if(f.exists()){
         // read file
         // obey commands
         // remove file or use some other timing monitor
      }
   }
}

тогда вы можете просто использовать adb push для записи командных файлов.Действительно неэффективно, но его можно заставить работать в крайнем случае.Вы также можете делать более сложные вещи, такие как создание локальных серверов TCP / HTTP и использование переадресации портов adb, но это может быть просто излишним.

...