杨光福—手机卫士day6.doc

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
手机卫士 讲师:杨光福 Day6 51_黑名单号码数据库的创建曾删改查_40 演示金山卫士的拦截效果; 创建手机防盗页面CallSmsSafeActivity,并在功能清单文件注册。 添加跳转逻辑,并实现布局文件,头部采用相对布局; 在com.itheima.mobile.db目录下创建数据库打开帮助类BlackNumberDBOpenHelper,它是继承SQLiteOpenHelper的; 讲解构造方法的参数和OnCreate方法什么时候执行; 创建数据库的表结构 //创建表 blacknumber 主键_id自增长 ,number黑名单号码,mode拦截模式:1电话拦截 2短信拦截 3全部拦截 db.execSQL(create table blacknumber (_id integer primary key autoincrement,number varchar(20),mode varchar(2))); 创建新包com.itheima.mobilesafe.test并创建测试数据类TestBlackNumberDB 继承AndroidTestCase 创建数据库方法testCreateDB() public void testCreateDb(){ BlackNumberDBOpenHelper helper = new BlackNumberDBOpenHelper(getContext()); helper.getWritableDatabase(); } 测试报错后,添加测试框架相关参数; 测试框架(放在manifest根节点) instrumentation android:name=android.test.InstrumentationTestRunner android:targetPackage=com.itheima.mobilesafe / 依赖库(放在application里面) uses-library android:name=android.test.runner / 运行测试代码,查看是否已经成功创建数据库,导出用工具打开查看列表信息; 数据的增、删、改、查的实现 com.itheima.mobilesafe.db.dao 创建类BlackNumberDao 在里面实现增删改查; A:在构造方法里创建数据库; helper = new BlackNumberDBOpenHelper(context); B:数据库的添加add(String number,String mode) SQLiteDatabase db= helper.getWritableDatabase(); ContentValues values = new ContentValues(); values.put(number, number); values.put(mode, mode); //第二个参数:当内容为空时 db.insert(blacknumber, null, values); db.close(); nullColumnHack 当values参数为空或者里面没有内容的时候,insert是会失败的(底层数据库不允许插入一个空行),为了防止这种情况,要在这里指定一个列名,到时候如果发现将要插入的行为空行时,就会将你指定的这个列名的值设为null,然后再向数据库中插入。 通过观察源码的insertWithOnConflict方法可以看到当ContentValues类型的数据initialValues为null或size=0时,就会在sql语句中添加nullColumnHack的设置。 C:数据库的删除delete(String number) SQLiteDatabase db= helper.getWritableDatabase(); db.delete(blacknumber, number=?, new String[]{number}); db.close(); D:数据的修改update(String number ,String newMode): SQLiteDatabase db= helper.getWritableDatabase(); ContentValues values = new ContentValues(); values.put(mode, newMode); db.update(blacknumber, values, number=?, new St

文档评论(0)

wuyoujun92 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档