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. Hibernate 3.0 HelloWorld

    说明 基于Hibernate 3.0,Mysql5.0,java jdk 1.7,运行需要的lib 库,从http://files.cnblogs.com/HCCZX/Hibernate_Lib.ra ...

  2. 莫队算法&BZOJ2038

    题目传送门 今天看了分块,顺便把基本的莫队学习了一下. 莫队算法是一种离线算法,复杂度可以达到O((M+N)*Sqrt(N)); 对于询问区间的左端点分块,块内的右端点从小到大排列. 对区间进行偏移操 ...

  3. Cocoa Touch提供了哪几种Core Animation过渡类型?

    过渡动画通过 type 设置不同的动画效果, CATransition 有多种过渡效果, 但其实 Apple 官方的SDK只提供了四种: fade 淡出 默认 moveIn 覆盖原图 push 推出 ...

  4. java阻塞队列之ArrayBlockingQueue

    在Java的java.util.concurrent包中定义了和多线程并发相关的操作,有许多好用的工具类,今天就来看下阻塞队列.阻塞队列很好的解决了多线程中数据的安全传输问题,其中最典型的例子就是客园 ...

  5. 理解学习Springboot(一)

    Springboot有何优势呢,网上一大推,这里就不写了. 一.配置maven 1.在maven官网下载maven,http://maven.apache.org/download.cgi 2.将下载 ...

  6. 常用SQL语句大全(SQL Server)

    一.基础       查看数据库状态 select state_desc from sys.databases where name='dbname'  -- dbname数据库名 1.说明:创建数据 ...

  7. hession矩阵的计算与在图像中的应用

    参考的一篇博客,文章地址:https://blog.csdn.net/lwzkiller/article/details/55050275 Hessian Matrix,它有着广泛的应用,如在牛顿方法 ...

  8. Lua学习笔记(3):运算符

    算术运算符 运算符 描述 + 加法运算符 - 减法运算符 * 乘法运算符 / 除法运算符 % 取模运算符 ^ 乘幂 A=3 print(A^2)输出9 关系运算符 ~= 不等于 == 等于 > ...

  9. 搭建docker 私有镜像仓库

    前期准备 服务器:centos 7.3 docker-ce: 18.06.1-ce docker-compose: 1.22.0 docker 安装 首先,更新系统 yum update yum up ...

  10. linux ——使用find如何快速替换所有相同参数

    在生成环境上有时候需要大规模修改某一配置里的参数,但是该参数存在多个地方,比如IP地址 端口 项目名等,特别是项目名称混乱想统一 find  /项目地址 -type f |xargs grep &qu ...