我想在Android上发送假短信,但我无法做到。
我的代码如下:
Intent a = new Intent("android.provider.Telephony.SMS_RECEIVED");
byte[] by =(byte[])(SmsMessage.getSubmitPdu("12345", "1234", "hello", false).encodedMessage);
Object[] vrs = {by};
a.putExtra("pdus",vrs);
sendBroadcast(a);
你有什么想法吗?
答案 0 :(得分:2)
某些广播受到保护,只能由系统发送。也许这就是其中之一。
UPDATE Android SMS应用程序的这个片段可能会对您有所帮助。
<!-- Require sender permissions to prevent SMS spoofing -->
<receiver android:name=".transaction.PrivilegedSmsReceiver"
android:permission="android.permission.BROADCAST_SMS">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
简而言之,请尝试询问BROADCAST_SMS权限
供进一步参考http://mobiforge.com/developing/story/sms-messaging-android
答案 1 :(得分:1)
检查您的清单文件并确保授予以下权限:
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />