我正在为android编写一个自动加密/解密sms / mms应用程序。想要加密消息并将其发送到接收电话上的解密位置。
虽然在接收时很容易自动解密邮件,但您只需将其解密,删除它,然后重新添加即可。在发送消息并更改消息时,似乎很难拦截消息。
无论如何都要读取和编辑在手机实际发送之前发送的短信。因此,发送和接收电话可以在其上具有解密密钥,并且实际上不必使用不同的应用程序或手动加密来处理,电话将自动执行。
答案 0 :(得分:1)
对您发送的邮件实施 ContentObserver
,以拦截任何传出的短信。
ContentResolver mContentResolver = context.getContentResolver();
mContentResolver.registerContentObserver(Uri.parse("content://sms/out"),true, mObserver);
使用 Cursor
转到任何短信并提取短信正文。
使用类似
的内容Uri smsUri = Uri.parse("content://sms/out");
Cursor mCursor = this.getContentResolver().query(smsUri, null, null, null, null);
mCursor.moveToNext();
mCursor.getString(mCursor.getColumnIndex("body"));
并查看this StackOverflow question ..它会精心解答您的问题。