无法在Android中使用Dual Sim手机发送短信

时间:2017-03-06 00:07:02

标签: android smsmanager dual-sim

我正在开发一款向客户发送短信的Android应用,我使用的是索尼XPERIA T2 Ultra Dual和Android 5.1.1。

这是我的代码:

           SmsManager smsManager
                    = SmsManager
                        .getSmsManagerForSubscriptionId(subscriptionId);

            smsManager.sendTextMessage( sms.getNumber(), null,
                                        sms.getContent(), sentPI, deliveredPI);

消息位于消息应用程序中,但它们被标记为未发送。 我'我一直试图将消息中心号码添加为scAddress参数,但它不起作用。 我在stackoverflow中测试了所有解决方案,但没有任何效果。 有人有想法吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

最后我找到了解决方案。

我的应用清单是:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.RECEIVE_SMS" />

但它也必须有这个:

<uses-permission-sdk-23 android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission-sdk-23 android:name="android.permission.RECEIVE_SMS"/>
<uses-permission-sdk-23 android:name="android.permission.SEND_SMS"/>
<uses-permission-sdk-23 android:name="android.permission.INTERNET" />
<uses-permission-sdk-23 android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>