通过adb shell服务调用isms Android 4.1.2发送短信

Ale*_*nar 17 shell service sms android adb

目前我通过此命令发送短信:

adb shell service call isms 6 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 >>>>
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我删除这个"SmsRestrictionPolicy"吗?

谢谢

Phi*_*hil 3

引用这篇文章

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
Run Code Online (Sandbox Code Playgroud)

其中 CCXXXXXXXXXX 是国家/地区代码,后跟电话号码。这可能无法在非标准 Android 安装上正常工作,您需要找到要传递的正确 keyevent 值。


这篇文章的评论看来,通过问题中提到的发送service call isms是不可能的(尽管我敢打赌,如果您的应用程序被设置为设备的默认短信应用程序,这是可能的)


在没有用户交互的情况下发送 SMS 的一种解决方法是将号码和消息发送到发送 SMS 消息的服务器。可能已经有一个第三方工具可以做到这一点。乍一看,可能很有用。