1、content provider与网页有何相似之处?

  contentProvider使用authority 同网站的域名类似
  contentProvider还可以提供类似于网站的索引方式
       content://media/external/images/#
     2、你能列出几个内置的content provider吗?
  imagestore,constans,media, message,
     3、通过adb工具你可以做些什么?
   可以获取文件和操作手机
     4、什么是AVD?
   android vertual device
     5、你如何列出可用的AVDs?
  android list avds
     6、Android中的一些有用的命令行工具名称是什么?
    adb,ddms
     7、content provider对应的数据库在什么位置?
  在创建项目的data/data下面
     8、浏览一个数据库的好的方法是什么?
  Cursor方式
     9、Content provider的authority属性是什么?
  就是用来索引的,类似于wen的域名
     10、content provider的authority可以缩写吗?
  不可以
     11、MIME类型是什么?其如何与content provider相联系?
  是用来验证的类型。1)就是定义后可以使系统认为你的返回时安全的
  2)就是可以设置必要的data在androidmanifest.xml的时候,这样发的intent就可以用到这个类型了。
        this.startActivity(new Intent(action, uri));
  Uri可以是数据库的某条记录,然后,这个时候需要先匹配contentprovider的gettype类型。
     12、程序员如何找到与某content provider通信的URIs?
  
     13、如何通过URIs来访问数据?
  mcontentresolver
     14、如何为content provider的query语句传入where语句?
  mContentResolver.query(SearchMetaData.CONTENT_URI,
                projection, selection, selectionArg, null)
     15、如何遍历一个cursor?
          Cursor cursor = mContentResolver.query(SearchMetaData.CONTENT_URI,
                projection, selection, selectionArg, null);
        if (cursor != null) {
            while (cursor.moveToNext()) {
                // int persionId=
                // cursor.getInt(cursor.getColumnIndex(SearchMetaData.PERSIOD_ID));
                String path = cursor.getString(cursor
                        .getColumnIndex(SearchMetaData.BITMAP_PATH));
                if (!mPathHash.contains(path)) {
                    mPathHash.add(path);// we not add same path twice
                }
            }
            cursor.close();
        }
     16、Content Values扮演一个什么角色?
  传入数据库的数据,一条记录就是一个values
     17、ContentResolver类扮演什么角色?
  上层操作数据库的媒介
     18、在Content Provider中存储一个文件的协议是什么?
  通过BLOB的方式可以直接存储大文件,图片,MP3等。
  getInputStream()和getOutpurStream()来读写二进制信息。
     19、UriMatcher如何工作,如何使用UriMatcher?
  

    static {
URI_MATCHER = new UriMatcher(UriMatcher.NO_MATCH);
URI_MATCHER.addURI(AUTHORITY, SearchMetaData.TABLE_NAME,
SEARCH_COLLECTION_URI_INDICATER);
URI_MATCHER.addURI(AUTHORITY, SearchMetaData.TABLE_NAME + "/#",
SEARCH_SINGAL_URI_INDICATER);
URI_MATCHER.addURI(AUTHORITY, ApplicationsMetaData.TABLE_NAME,
APPLICATIONS_COLLECTION_URI_INDICATER);
URI_MATCHER.addURI(AUTHORITY, ApplicationsMetaData.TABLE_NAME + "/#",
APPLICATIONS_SINGAL_URI_INDICATER);
}
int op = URI_MATCHER.match(uri);
String idapp = "";
switch (op) {
case SEARCH_COLLECTION_URI_INDICATER:
count = db.delete(SearchMetaData.TABLE_NAME, selection,
selectionArgs);
break;
case SEARCH_SINGAL_URI_INDICATER:
String id = uri.getPathSegments().get(1);
count = db.delete(SearchMetaData.TABLE_NAME, SearchMetaData._ID
+ "="
+ id
+ (!TextUtils.isEmpty(selection) ? "AND(" + selection + ')'
: ""), selectionArgs);
break;
case APPLICATIONS_SINGAL_URI_INDICATER:
idapp = uri.getPathSegments().get(1);
case APPLICATIONS_COLLECTION_URI_INDICATER:
ApplicationsMetaData
.delete(db, op, idapp, selection, selectionArgs);
break;
default:
throw new IllegalArgumentException("Unknown Uri " + uri);
}

Android四大组件之contentProvider(续)的更多相关文章

  1. Android 四大组件之" ContentProvider "

    前言 ContentProvider作为Android的四大组件之一,是属于需要掌握的基础知识,可能在我们的应用中,对于Activity和Service这两个组件用的很常见,了解的也很多,但是对Con ...

  2. Android四大组件之——ContentProvider(一)

    Android四大组件之--ContentProvider(一) 本人邮箱:JohnTsai.Work@gmail.com,欢迎交流讨论. 欢迎转载,转载请注明网址:http://www.cnblog ...

  3. 【Android开发日记】之入门篇(九)——Android四大组件之ContentProvider

    数据源组件ContentProvider与其他组件不同,数据源组件并不包括特定的功能逻辑.它只是负责为应用提供数据访问的接口.Android内置的许多数据都是使用ContentProvider形式,供 ...

  4. 初学android:四大组件之contentprovider

    一.ContentProvider的概念ContentProvider:为存储和获取数据提供统一的接口.可以在不同的应用程序之间共享数据.Android已经为常见的一些数据提供了默认的ContentP ...

  5. Android四大组件之contentProvider

    Activity,Service,broadcast and Contentprovider android 4 大组件. ContentProvider:使用: public class Image ...

  6. android四大组件之ContentProvider(一)

    ContentProvider学习笔记 1. ContentProvider基本概念 ContentProvider向我们提供了我们在应用程序之间共享数据的一种机制,虽然采用文件和SharedPref ...

  7. Android 四大组件之四(ContentProvider)

    ContentProvider调用关系: ContentProvider(数据提供者)是应用程序之间共享数据的一种接口机制,是一种更为高级的数据共享方法. ContentProvider可以指定需要共 ...

  8. Android四大组件之Intent(续2)

    1.你如何通过一个intent来唤醒activity? this.startActivity(intent,request);      2.什么是显式.隐式的intents? 显式:指定组件名,通常 ...

  9. android四大组件之ContentProvider(二)

    ContentProvider学习笔记 上一章节我们编写了自定义的一个StudentProvider,他提供了两种供外界访问数据的方式,content://come.demo.sqlite.stude ...

随机推荐

  1. css实现div两列布局——左侧宽度固定,右侧宽度自适应(两种方法)

    原文:css实现div两列布局--左侧宽度固定,右侧宽度自适应(两种方法) 1.应用场景 左侧一个导航栏宽度固定,右侧内容根据用户浏览器窗口宽度进行自适应 2.思路 首先把这个问题分步解决,需要攻克以 ...

  2. 用 Qt 的 QAudioOutput 类播放 WAV 音频文件

    用 Qt 的 QAudioOutput 类播放 WAV 音频文件 最近有一个项目,需要同时控制 4 个声卡播放不同的声音,声音文件很简单就是没有任何压缩的 wav 文件. 如果只是播放 wav 文件, ...

  3. TMS320VC5509驱动LCD1602

    1. 本次使用5509芯片的EMIF接口,先看下硬件的接口 LCD1602接口  RS(高电平1数据寄存器,低电平0指令寄存器) 接A2接口 LCD1602接口  RW(高电平读,低电平写) 接 AW ...

  4. oracle数据库应用性能优化经验(培训讲义)

    这是我给公司同事做的内部培训ppt的讲义,给大家分享一下.这是培训大纲,ppt在找地方上传,等找到了会把链接发在这里 . 暂时放在csdn上,赚点下载积分:https://download.csdn. ...

  5. nexus实现从windows迁移至Linux平台

    说明: 由于老环境是在本地windows 2008 R2里面搭建的nexus,前面搭建了jenkins,需要将maven私库迁移至云服务器的CentOS 7系统下,之前没做过nexus的迁移,在网上看 ...

  6. leetcode-下一个排列

    下一个排列 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列. 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列). 必须原地修改,只允许使用额外 ...

  7. OpenLDAP编译安装及配置

    原文发表于cu:2016-06-20 参考文档: 原理:http://seanlook.com/2015/01/15/openldap_introduction/ 官方文档: http://www.o ...

  8. windows python MySQL-python安装过程

    问题表述: pip install MySQL-python==1.2.5 出现如下报错: C:\Users\Administrator\AppData\Local\Programs\Common\M ...

  9. 第九次ScrumMeeting博客

    第九次ScrumMeeting博客 本次会议于11月4日(六)22时整在3公寓725房间召开,持续20分钟. 与会人员:刘畅.辛德泰.窦鑫泽.张安澜.赵奕.方科栋. 1. 每个人的工作(有Issue的 ...

  10. spark总结——转载

    转载自:    spark总结 第一个Spark程序 /** * 功能:用spark实现的单词计数程序 * 环境:spark 1.6.1, scala 2.10.4 */ // 导入相关类库impor ...