通过adb外壳服务呼叫isms Android 4.1.2发送短信

通过adb外壳服务呼叫isms Android 4.1.2发送短信,android,shell,service,sms,adb,Android,Shell,Service,Sms,Adb,目前我通过以下命令发送短信: adb外壳服务调用isms 6 s16“电话号码”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 >>&

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

adb外壳服务调用isms 6 s16“电话号码”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 >>>>
有人能帮我删除这个“SMS限制政策”吗

谢谢

引用:

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


从评论中可以看出,如问题中所述,通过
服务呼叫isms
发送是不可能的(尽管我敢打赌,如果您的应用程序被设置为设备的默认SMS应用程序,这是可能的)



在没有用户交互的情况下发送SMS的一种解决方法是将号码和消息发送到发送SMS消息的服务器。可能已经有了第三方的工具。快速浏览,可能很有用。

尝试使用
telnet
sms send
命令

阅读更多信息。

我的环境:
  • 安卓4.1.2
  • MIUI ROM
你可以试试这个

服务调用isms..
命令之前切换到消息应用程序用户

su u0_a34\
服务呼叫isms 5 s16“10086”i32 0 i32 0 s16“11”


u0\u a34
是消息应用程序的用户名。

它不起作用,因为在android 4.1.2中,isms编号是5而不是6。 所以它是:

adb shell service call isms 5 s16 "com.android.mms" s16 "+01234567890" s16 "+01000000000" s16 "Hello world !" i32 0 i32 0

您可以在此处查看如何为任何android版本执行此操作:

您尝试过此操作吗?可能是重复的谢谢我要试试
adb shell service call isms 5 s16 "com.android.mms" s16 "+01234567890" s16 "+01000000000" s16 "Hello world !" i32 0 i32 0