2

エミュレータを使用しています(Android 2.3.3)

adb shell "am start -a android.intent.action.INSERT -t vnd.android.cursor.dir/contact -e name 'Android Auto' -e phone 51115111"

このコマンドは、「新しい連絡先」を起動して名前と電話番号を入力するのに役立ちます。挿入を完了するには、画面で [完了] をクリックする必要があります。

手動介入なしで手順を終了する方法はありますか?

4

2 に答える 2

8

@Shimon Elbazは正しいです。

「戻るキー」は、変更を保存するのに役立ちます。
私にとって(Android 4.4.2で)次のスクリプトは機能します:

adb shell am start -a android.intent.action.INSERT -t vnd.android.cursor.dir/contact -e name 'Android Auto22232342' -e phone 51115111
adb shell input keyevent 4
adb shell input keyevent 4
adb shell input keyevent 4


HW戻るボタンを 3 回押す必要があります

私の仕事は、デバイスに 50 の連絡先を追加することでした。そのために、単純な bash スクリプトを作成しました。

contactCount=50
if (( $# != 0 ))
    then
        let contactCount=$1
fi
for (( c=0; c<contactCount; c++))
do
    adb shell am start -a android.intent.action.INSERT -t vnd.android.cursor.dir/contact -e name 'Test'$c -e phone 511151$c
    adb shell input keyevent 4
    adb shell input keyevent 4
    adb shell input keyevent 4
    wait $pid
done
adb shell input keyevent 4
  1. 50 件の連絡先を追加するには、パラメーターを指定せずにスクリプトを実行します。

    ./script.sh

  2. 他の数の連絡先を追加するには、パラメーターを追加します。

    ./script.sh

    元。3 つの連絡先を追加するには:

    ./script.sh 3

また、このアクションを行うための簡単な方法があると思います。喜んで見ていきます =)

ご清聴ありがとうございました。

于 2014-04-16T15:43:48.890 に答える
0

キーイベントを使用できます。基本的に、キーイベントは adb シェル経由で送信することもできます - adb.exe shell input keyevent #

主要なイベントはベンダー間でほとんど同じであり、このチャートを使用して適切なイベントを見つけることができます。

リストと一致しない場合は、少し試してみてください。

また、多くのデバイスでは、情報を含むインテントを開いた後、「ホーム」または「リターン」キーを押すと、変更が自動的に保存されることにも注意してください。

于 2013-01-30T13:25:17.413 に答える