現在、私はこのコマンドでSMSを送信します:
adbシェルサービス呼び出しisms6 s16 "phoneNumber" i32 0 i32 0 s16 "smsText"
Android 2.3.6で、完全に機能します。
Android 4.1.2で同じコマンドを使用したいのですが、コマンドを送信すると、Logcatでこの出力を受け取りました
> 12-11 14:17:37.97 1626-2182/? D/PhoneRestrictionPolicy﹕ SmsRestrictionPolicy.canOutgoingSms >>>>
誰かがこの「SmsRestrictionPolicy」を削除するのを手伝ってくれませんか?
ありがとう
引用 この投稿 :
adb Shell am start -a Android.intent.action.SENDTO -d sms:CCXXXXXXXXXX --es sms_body "SMS BODY GOES HERE" --ez exit_on_sent true
adb Shell input keyevent 22
adb Shell input keyevent 66
ここで、CCXXXXXXXXXXは国コードの後に電話番号が続きます。これは、非標準のAndroidインストールでは正しく機能しない可能性があります。渡すには、正しいkeyevent値を見つける必要があります。
この投稿 に関するコメントから、質問で述べたように、service call isms
経由で送信することはできないようです(私はそれを賭けますがisアプリがデフォルトとして設定されている場合は可能SMSデバイスのアプリ)。
ユーザーの操作なしでSMSを送信するための回避策の1つは、SMSメッセージを送信するサーバーに番号とメッセージを送信することです。このためのサードパーティツール。一見すると、 this が役立つ場合があります。
あなたはこれを試すことができます。
service call isms ..
コマンドの前にメッセージアプリケーションユーザーに切り替えます。
su u0_a34 \
サービスコールisms5 s16 "10086" i32 0 i32 0 s16 "11"
u0_a34
は、メッセージアプリケーションのユーザー名です。
Android 4.1.2ではisms番号が6ではなく5であるため、機能しませんでした。つまり、次のようになります。
adb Shell service call isms 5 s16 "com.Android.mms" s16 "+01234567890" s16 "+01000000000" s16 "Hello world !" i32 0 i32 0
Androidバージョンはこちら: リンク
telnet
およびsms send
コマンドを試してください。
続きを読む ここ 。