回答:
adb shell
am start -n com.package.name/com.package.name.ActivityName
または、これを直接使用できます。
adb shell am start -n com.package.name/com.package.name.ActivityName
intent-filtersでフィルタリングするアクションを指定することもできます。
am start -a com.example.ACTION_NAME -n com.package.name/com.package.name.ActivityName
function androidrun(){ ant clean debug adb shell am start -n $1/$1.MainActivity }
し、使用方法を変更しましたandroidrun com.example.test
adb logcat | grep --line-buffered ActivityManager | grep --line-buffered
表示されたすべてのアプリケーションをリストしました。
次のパターンに従うことにより、モンキーツールを使用するだけでパッケージ名を指定してアプリケーションを実行できます。
adb shell monkey -p your.app.package.name -c android.intent.category.LAUNCHER 1
コマンドは、アプリケーションのランダム入力を生成するモンキーツールを使用してアプリを実行するために使用されます。コマンドの最後の部分は整数で、アプリ用に生成されたランダム入力の数を指定します。この場合の数は1で、実際にはアプリの起動(アイコンのクリック)に使用されます。
adb shell monkey -p your.app.package.name 1
adb shell am startservice com.some.package.name/.YourServiceSubClassName
こちらを参照してください:stackoverflow.com/a/18703083/211292
または、これを使用できます:
adb shell am start -n com.package.name/.ActivityName
monkey -p com.package.name 1
経由adb shell
linux / macユーザーは、次のようなものでapkを実行するスクリプトを作成することもできます。
次の3行を含む「adb-run.sh」という名前のファイルを作成します。
pkg=$(aapt dump badging $1|awk -F" " '/package/ {print $2}'|awk -F"'" '/name=/ {print $2}')
act=$(aapt dump badging $1|awk -F" " '/launchable-activity/ {print $2}'|awk -F"'" '/name=/ {print $2}')
adb shell am start -n $pkg/$act
次に、「chmod + x adb-run.sh」を実行可能にします。
今すぐ簡単にできます:
adb-run.sh myapp.apk
ここでの利点は、パッケージ名や起動可能なアクティビティ名を知っている必要がないことです。同様に、「adb-uninstall.sh myapp.apk」を作成できます
注:これには、パスにaaptが必要です。SDKの新しいビルドツールフォルダーの下にあります。
また、もう1つ触れておきます。
あなたがからアプリケーションを起動するとadb shell am
、それは自動的にFLAG_ACTIVITY_NEW_TASKフラグ追加動作の変更を行います。コードを見る。
たとえば、からPlayストアアクティビティを起動した場合adb shell am
、「戻る」ボタン(ハードウェアの戻るボタン)を押してもアプリは起動せず、以前のPlayストアアクティビティがあった場合に起動します(Playストアタスクがなかった場合) 、それからあなたのアプリが必要になります)。FLAG_ACTIVITY_NEW_TASKドキュメントは言う:
現在開始しているアクティビティに対してタスクが既に実行されている場合、新しいアクティビティは開始されません。代わりに、現在のタスクは、それが最後にあった状態で画面の前面に表示されます
そのため、何時間問題があったのかを突き止めるために数時間を費やしました。
したがって、adb shell am
FLAG_ACTIVITY_NEW_TASKフラグを追加することに注意してください。
アプリケーションのタイプを把握し、データを入力することで、アプリケーションを開始することもできます。
adb shell am start -d "file:///sdcard/sample.3gp" -t "video/3gp" -a android.intent.action.VIEW
このコマンドは、sample.3gpファイルを再生するために使用可能なビデオプレーヤーを表示します
ステップ1:まず、デバイスにインストールされているアプリのすべてのパッケージ名を取得します。以下を使用します。
adb shell pm list packages
ステップ2:すべてのパッケージ名を取得し、adbの使用を開始するものをコピーします。
ステップ3:以下のコマンドで目的のパッケージ名を追加します。
adb shell monkey -p 'your package name' -v 500
例:
adb shell monkey -p com.estrongs.android.pop -v 500
Esエクスプローラーを開始します。
〜/ .bash_profile を開き、これらのbash関数をファイルの最後に追加します
function androidinstall(){
adb install -r ./bin/$1.apk
}
function androidrun(){
ant clean debug
adb shell am start -n $1/$1.$2
}
次にAndroidプロジェクトフォルダを開きます
androidinstall app-debug && androidrun com.example.app MainActivity
app-debug
か?
monkey --pct-syskeys 0
開発ボード用
この引数がないと、アプリは開発ボード上でキー/ディスプレイなしで開くことができません。
adb shell monkey --pct-syskeys 0 -p com.cirosantilli.android_cheat.textviewbold 1
そしてエラーで失敗します:
SYS_KEYS has no physical keys but with factor 2.0%
HiKey960、Android O AOSPでテスト済み。
Androidフォトアプリを開き、特定の画像ファイルをパラメーターとして開くには、これを試してください。
adb shell am start -n com.google.android.apps.photos/.home.HomeActivity -d file:///mnt/user/0/primary/Pictures/Screenshots/Screenshot.png
それは最新のアンドロイドで動作します、あなたがあなたがあなたのイメージを開きたい特定のアプリを与えているとき、ポップアップは開いてアプリケーションを選択するようになりません