Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在android studio中删除短信_Java_Android_Permissions_Sdk_Sms - Fatal编程技术网

Java 如何在android studio中删除短信

Java 如何在android studio中删除短信,java,android,permissions,sdk,sms,Java,Android,Permissions,Sdk,Sms,我可以通过手机收到短信 我想删除手机上的最后一条信息。 我该怎么做? 你能帮我吗?谢谢 我用于拉取SMS的代码: @Override public void onReceive(Context context, Intent intent) { Bundle bundle = intent.getExtras(); SmsMessage[] smsm = null; String sms_str = ""; String id = Settings.Secure

我可以通过手机收到短信 我想删除手机上的最后一条信息。 我该怎么做? 你能帮我吗?谢谢

我用于拉取SMS的代码:

@Override
public void onReceive(Context context, Intent intent) {

    Bundle bundle = intent.getExtras();
    SmsMessage[] smsm = null;
    String sms_str = "";
    String id = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID);


    if (bundle != null) {
        Object[] pdus = (Object[]) bundle.get("pdus");
        smsm = new SmsMessage[pdus.length];

        for (int i = 0; i < smsm.length; i++) {
            smsm[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
            sms_str += "SMS: ";
            sms_str += smsm[i].getMessageBody().toString();
            sms_str += "\n\r";
            String number= smsm[i].getOriginatingAddress();
            Intent smsIntent = new Intent("otp");
            smsIntent.putExtra("message", sms_str);
            LocalBroadcastManager.getInstance(context).sendBroadcast(smsIntent);

        }
    }
@覆盖
公共void onReceive(上下文、意图){
Bundle=intent.getExtras();
SmsMessage[]smsm=null;
字符串sms_str=“”;
String id=Settings.Secure.getString(context.getContentResolver(),Settings.Secure.ANDROID);
if(bundle!=null){
Object[]pdus=(Object[])bundle.get(“pdus”);
smsm=新smsm消息[PDU.length];
对于(int i=0;i
在现代Android设备上,只有默认的SMS应用程序(由用户设置,无法在非根用户手机上以编程方式设置)可以删除短信。如果您试图删除它是因为您的应用程序使用短信进行通信,请查看其他形式的通信。

上面的示例代码显示了传入的短信,我想立即删除它same@MustafaKemal除非你是用户设置的默认短信应用程序,否则你不能。这是安卓4.4或更高版本中进行的安全更改(必须查找确切版本)以防止应用程序仅删除SMSE。如果您是该应用程序,则可以从内容提供商处删除它。