1、演示金山衛士的攔截效果;
2、建立手機防盜頁面callsmssafeactivity,並在功能清單檔案註冊。
3、新增跳轉邏輯,並實現布局檔案,頭部採用相對布局;
4、在com.itheima.mobile.db目錄下建立資料庫開啟幫助類blacknumberdbopenhelper,它是繼承sqliteopenhelper的;
5、講解構造方法的引數和oncreate方法什麼時候執行;
6、建立資料庫的表結構
//建立表 blacknumber
主鍵_id自增長 ,number黑名單號碼,mode攔截模式:1**攔截 2簡訊攔截 3全部攔截
db.execsql("create table blacknumber (_id integer primary keyautoincrement,number varchar(20),mode varchar(2))");
7、建立新包com.itheima.mobilesafe.test並建立測試資料類testblacknumberdb 繼承androidtestcase
8、建立資料庫方法testcreatedb()
public
voidtestcreatedb());
db.close();
d:資料的修改update(string number ,stringnewmode):
sqlitedatabase db= helper.getwritabledatabase();
contentvaluesvalues =newcontentvalues();
values.put("mode",newmode);
db.update("blacknumber", values, "number=?",newstring);
db.close();
e:查詢黑名單是否存在該號碼find(string number)
booleanresult =false;
sqlitedatabase db= helper.getwritabledatabase();
cursorcursor = db.query("blacknumber",null, "number=?",newstring,null,null,null);
if(cursor.movetonext())
cursor.close();
db.close();
returnresult;
f:查詢攔截模式findmode(string number)
string mode =null;
sqlitedatabase db= helper.getwritabledatabase();
cursorcursor = db.query("blacknumber",newstring, "number=?",newstring,null,null,null);
if(cursor.movetonext()),null,null,null,null,null);
while(cursor.movetonext())else
if("2".equals(info.getmode()))else
if("3".equals(info.getmode()))elseelseelse
if("2".equals(info.getmode()))else
if("3".equals(info.getmode())).start();
3、更新資料
//更新資料
privatehandler handler =newhandler()catch(interruptedexception e) );
while(cursor.movetonext())elseelse
@override
public
voidoncreate()catch(exception e) );
uri路徑如何寫可以參照源**
執行演示,會報錯;
3、需要加兩個許可權
<
uses-permission
android:name="android.permission.read_call_log"
/>
<
uses-permission
android:name="android.permission.write_call_log"
/>
4、解釋刪除有時成功,有時不成功的情況;
立刻把**結束通話了,但呼叫的生成並不是同步的**;它是乙個非同步的**。
5、用觀察者去監聽日誌產生後再去刪除
註冊監聽
getcontentresolver().registercontentobserver(url,true,newmycontentobserver(newhandler(),incomingnumber));
自定義內容觀察者
private
classmycontentobserverextendscontentobserver{
privatestring incomingnumber;
publicmycontentobserver(handler handler,string incomingnumber) {
super(handler);
this.incomingnumber = incomingnumber;
@override
public
voidonchange(booleanselfchange) {
super.onchange(selfchange);
//刪除呼叫記錄
deletecalllog(incomingnumber);
//取消註冊內容觀察者
getcontentresolver().unregistercontentobserver(this);
補充android2.3模擬器上需要多加許可權
<
uses-permission
android:name="android.permission.write_contacts"
/>
黑馬docker總結筆記
docker映象加速 vim etc docker damon.json 登入並使用阿里雲映象加速器 docker映象相關命令 docker imagesdocker search redisdocker pull imagedocker rmi image檢視容器 docker ps docker...
SQL學習筆記(學自黑馬) 約束
對錶中的資料進行限定,保證資料的正確性 有效性和完整性。1.主鍵約束 primary key 2.非空約束 not null 值不能為null 3.唯一約束 unique 值不能重複,但可以有多個null值 4.外來鍵約束 foreign key 刪除外來鍵 alter table 表名 drop ...
學完靜態後的複習總結
複習總結 張倫琦 首先我來回顧一下腦海中所有這兩天的知識點 物件導向 private關鍵字 this關鍵字 靜態變數 成員變數 區域性變數 靜態 塊 構造 塊 區域性 塊 靜態方法 構造方法 成員方法 總結一下就是 乙個思想,兩個關鍵字,三個變數,三個 塊,三個方法。最先看下物件導向的思想,核心我感...