Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.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
Android删除发送框中的短信_Android_Sms_Android 4.4 Kitkat_Smsmanager - Fatal编程技术网

Android删除发送框中的短信

Android删除发送框中的短信,android,sms,android-4.4-kitkat,smsmanager,Android,Sms,Android 4.4 Kitkat,Smsmanager,在Android KitKat之前,可以使用以下方法发送SMS消息,而无需将其存储在设备上已安装的消息应用程序的sent文件夹中: SmsManager sms = SmsManager.getDefault(); sms.sendTextMessage(phonenumber, null, message, null, null); 但是在KitKat之后是如何做到的呢?您是否必须删除应用程序发送的消息?如果是这样的话,它是如何正确完成的?从KitKat开始,任何具有SEND\u SMS权限

在Android KitKat之前,可以使用以下方法发送SMS消息,而无需将其存储在设备上已安装的消息应用程序的sent文件夹中:

SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(phonenumber, null, message, null, null);

但是在KitKat之后是如何做到的呢?您是否必须删除应用程序发送的消息?如果是这样的话,它是如何正确完成的?

从KitKat开始,任何具有
SEND\u SMS
权限的应用程序都可以使用标准的
smsmsmsmanager
方法发送消息,系统将自动将消息写入提供商。由于默认应用程序是唯一对提供商具有写入权限的应用程序,因此它是唯一可以删除邮件的应用程序,因此任何非默认应用程序都无法删除自动写入的邮件。*如果您不希望写入这些邮件,则应将您的应用程序设置为默认短信应用程序。默认应用程序负责编写自己的传出消息,并且可以选择不这样做



*Android 4.4(KitKat)中写访问限制的一个可能解决方法可以在中找到。

事实上,这里有一个与您接受的答案相同的问题:)@GoRoS不完全相同,但它解释了为什么尝试从非默认应用程序中删除不会起作用。啊,我理解。因此,对于不是默认SMS应用程序的应用程序,没有可能删除SMS消息(写访问)。在后台发送SMS的应用程序如何?是否可以将其设置为默认短信应用程序?@MikeM。我现在就是这么做的。。我为我的应用程序创建了活动,并在清单中定义了该权限,它现在显示在默认列表中。一旦我确认一切正常,我会立即通知您:)