8

adb シェルなどを使用してアプリケーションに送信できるコマンドを作成する方法を見つけたいと考えています。このようにして、何かを変更するたびにアプリケーションをリロードしなくても、プログラムに小さな変更を加えることができます。

adb シェルを開いて、実行中のアプリケーションにコマンドを送信する方法はありますか?

それが不可能な場合、(UI 要素を移動する) や (URL からファイルを作成する) などのことを実行できるように、アプリケーションにコマンドを送信する方法はありますか?アプリケーションに文字列コマンドを送信できるようにしたい.....

コマンドラインツールでそれができれば、それは素晴らしいことです。それ以外の場合、これを行うにはどうすればよいでしょうか?

4

2 に答える 2

7

adb シェルから、次のように入力しamます。アクティビティやサービスを開始したり、ブロードキャスト インテントを送信したりできます。引数は使用情報を出力しません。

adb shell am <command>スクリプトからこれを呼び出したい場合は、ホスト マシンから実行できます。

于 2011-04-27T23:23:25.883 に答える
4

この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 ポート転送の使用など、より複雑なこともできますが、それはやり過ぎかもしれません。

于 2011-04-27T23:27:42.193 に答える