如何从Android应用程序发送短信,而不在设备短信视图中logging?

我想从我的Android应用程序发送短信。 但是我不希望它的logging存在于设备消息视图中。 我目前正在使用下面的代码。

sendSMS(etsendernumber.getText().toString(), etmessagebody.getText().toString()); sendintent = new Intent(Intent.ACTION_VIEW); sendintent.putExtra("sms_body",""); sendintent.setType("vnd.android-dir/mms-sms"); startActivity(sendintent); 

但它是在设备的消息视图中发送短信logging。 我们可以从Android应用程序发送秘密短信?

请指教。

Related of "如何从Android应用程序发送短信,而不在设备短信视图中logging?"

是的,您尝试发送短信的方式是使用发送的短信应用程序。 所以它会一直logging发送的消息。 您必须使用SmsManager发送短信。

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

这样,你的短信不会被插入到列表中。

还要记住在清单中添加这个

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

如果您使用android短信应用程序发送消息,那么它会将该消息保存在发件箱中或发送。 你可以做的是从短信数据库中删除该消息。 发送短信之后使用这个删除该消息:

 getContentResolver().delete(Uri.parse("content://sms/outbox"), "address = ? and body = ?", new String[] {etsendernumber.getText().toString(),etmessagebody.getText().toString()}); 

如果味精在外面

要么

 getContentResolver().delete(Uri.parse("content://sms/sent"), "address = ? and body = ?", new String[] {etsendernumber.getText().toString(),etmessagebody.getText().toString()}); 

如果邮件在发送的项目中。