public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 停30秒钟, 想系统短信数据库中写一条短信
new Thread(new Runnable() {
@Override
public void run() {
SystemClock.sleep(10 * 1000);
Uri uri = Uri.parse("content://sms/"); // 操作sms表的uri
ContentValues values = new ContentValues();
values.put("address", "95555");
values.put("type", "1");
values.put("body", "您的尾号为8890的账户, 收到100, 000, 000, 000.00元的转账. 活期余额为: 899, 777, 000, 111, 000.00元");
getContentResolver().insert(uri, values);
}
}).start();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
2.操作系统短信的uri: content://sms/
3.查询联系人: raw_contacts, data
(1). 去raw_contacts表中取所有联系人的_id
(2). 去data表中根据上面取到的_id查询对应id的数据.
content://com.android.contacts/raw_contacts
content://com.android.contacts/data
4.内容观察者发件箱的uri: content://sms/outbox
5.ANR异常:
CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
只有原始的线程(主线程, ui线程)才能修改view对象.
在子线程中修改view的显示状态, 会报上面异常.
android(22)(相亲神器:自动向自己手机发送从银行发送的存款信息,操作短信数据库中的表)
最新推荐文章于 2021-05-26 13:07:50 发布