我从我的应用程序发送短信。我想从“发件箱”中删除发送短信,因为短信包含访问设备的PIN码。短信发送,但删除不起作用。 。 短信exixst,因为我能够在 “光标c_sms”Android删除发送短信
private void sms_sender(String sms_no, String sms_text) {
SmsManager.getDefault().sendTextMessage(sms_no, null, sms_text, null, null);
Toast
.makeText(MainScreen.this, R.string.text_message, Toast.LENGTH_SHORT)
.show();
Cursor c_sms = getApplicationContext().getContentResolver().query(Uri.parse("content://sms/"), null, null, null, null);
try{
while(c_sms.moveToNext()) {
long id = c_sms.getLong(0);
String pid = c_sms.getString(0);
String address = c_sms.getString(2);
if (address.equals(address)){
int count = getContentResolver().delete(Uri.parse("content://sms/" + id),null,null);
}
}
}
catch (Exception e){
Toast
.makeText(MainScreen.this, R.string.text_error + e.toString(), Toast.LENGTH_LONG)
.show();
}
}
它会崩溃吗?你有没有发现异常?代码是否运行没有崩溃,但短信仍在您的发件箱中?你有删除短信的权限吗?请详细... – Entreco
请注意,除非您的应用程序是用户的默认SMS客户端,否则您无法在Android 4.4及更高版本上执行此操作。如果情况并非如此,我建议您想出一些分发PIN码而不是SMS的其他方式。 – CommonsWare
它没有崩溃,permision我有SMS_READ,SMS_WRITE。是的,我发送短信,但删除后,短信仍然在发件箱中。我编译它为Android 4.4 ...有没有办法如何分配短信,因为环境是短信网关管理电源开关 – chip