微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Android中删除SMS-java.lang.RuntimeException:无法启动活动ComponentInfo

如何解决在Android中删除SMS-java.lang.RuntimeException:无法启动活动ComponentInfo

我正在尝试以编程方式删除我的android手机版本9.0 Oppo中的所有消息,而我一直在使用这两个功能

选项1

  public void del (){
    Uri.Builder builder;
    builder = Telephony.Sms.CONTENT_URI.buildUpon();
    builder.appendEncodedpath("your SMS ID here");
    Uri uri = builder.build();
    mContext.getContentResolver().delete(uri,null,null);

}

选项2

 mContext.getContentResolver().delete(Uri.parse("content://sms/inBox"),null);

权限

<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.WRITE_SMS" />

清单

<receiver android:name=".MmsReceiver"
        android:permission="android.permission.broADCAST_WAP_PUSH">
        <intent-filter>
            <action android:name="android.provider.Telephony.WAP_PUSH_DELIVER" />
            <data android:mimeType="application/vnd.wap.mms-message" />
        </intent-filter>
    </receiver>

    <activity android:name=".ComposeSmsActivity" >
        <intent-filter>
            <action android:name="android.intent.action.SEND" />
            <action android:name="android.intent.action.SENDTO" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.broWSABLE" />
            <data android:scheme="sms" />
            <data android:scheme="smsto" />
            <data android:scheme="mms" />
            <data android:scheme="mmsto" />
        </intent-filter>
    </activity>
    <receiver android:name=".SMSReceiver"
        android:permission="android.permission.broADCAST_SMS">
        <intent-filter>
            <action android:name="android.provider.Telephony.SMS_RECEIVED"/>
            <action android:name="android.intent.category.DEFAULT"/>
            <action android:name="android.provider.Telephony.SMS_DELIVER" />
        </intent-filter>
    </receiver>


    <service android:name=".HeadlessSmsSendService"
        android:permission="android.permission.SEND_RESPOND_VIA_MESSAGE"
        android:exported="true" >
        <intent-filter>
            <action android:name="android.intent.action.RESPOND_VIA_MESSAGE" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="sms" />
            <data android:scheme="smsto" />
            <data android:scheme="mms" />
            <data android:scheme="mmsto" />
        </intent-filter>
    </service>

    <receiver
        android:name=".ConnectivityReceiver"
        android:enabled="true">
        <intent-filter>
            <action
                android:name="android.net.conn.CONNECTIVITY_CHANGE"
                tools:ignore="BatteryLife" />
        </intent-filter>
    </receiver>

已授予权限

    if(ContextCompat.checkSelfPermission(getBaseContext(),"android.permission.READ_SMS") == 
      PackageManager.PERMISSION_GRANTED) {
        // Todo : If Permission Granted Then Show SMS
        refreshSmsInBox();
    } else {
        // Todo : Then Set Permission
        final int REQUEST_CODE_ASK_PERMISSIONS = 123;
        ActivityCompat.requestPermissions(MainActivity.this,new String[] 
       {"android.permission.READ_SMS"},REQUEST_CODE_ASK_PERMISSIONS);
    }

我还将设备上的认短信阅读器设置为我的应用。但是我无法删除所有消息,有人知道吗?是第9版的Oppo手机有问题吗?

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。