zoukankan      html  css  js  c++  java
  • ContentProvider 简介

    ContentProvider是不同应用程序之间交换数据的标准API,

    ContenProvider以某种uri的形式向外提供数据,允许其他应用访问或修改数据;、

    其他程序通过ContentResolve根据Uri去访问操作指定的数据

    使用时需要在manifest。xml中配置一下

    <provider android:name=".DictProvider"

       android:authorities = "org.crazyit.providers.dctprovider" />

    name-->指定contentProvider类

    authoritied-->指定Contentprovider的路径

    public boolean onCreate():该方法在ContentProvider创建后调用,

      当其他应用程序第一次访问ContentProvider时,该ContentProvider会被创建,

      然后立即调用onCreate();

    public Uri insert(Uri uri, ContentValues values):根据该Uri 插入values对应的数据

    public int delete(Uri uri, String selection, String[] selectionArgs):根据Uri删除select条件所匹配的全部记录

    public int update(Uri uri, ContentValues values,String selection ,String[] selectionArgs):据uri改条件匹配的全部记录

    public Cursor query(Uri uri ,string[] projection, String selection,String[] selectionArgs, String sortOrder):根据

        Uri查询条件所匹配的所有记录,其中projection就是一个列名列表,表明秩序阿泽出指定的数据列

    public String getType(Uri uri):返回Uri所代表的数据的MIME类型。

        若所对应数据可能包括多条记录那么MIME类型字符串应以vnd.android.cursor.dir/开头;

        不然就以vnd.android.cursor.item/开头

    Uri 详解

    例: content://org.crazyit.provider.dictprovider/words

    conten://t-->这部分是Android规定的,是固定的

    org.crazyit.provider.dictprovider-->这部分是ContentProvider的authority。

    words--->资源部分,访问不同资源的时候这个部分是动态的

      word/2-->wrod数据中ID为2的记录

      word/2/key-->wrod数据中ID为2的记录的key字段

      word/detail/-->word节点下的detail节点

  • 相关阅读:
    git/gerrit上已经删除了远程分支,本地仍然能看到的解决方法
    bat中查找文件夹下有几个某类型的文件
    ERROR 1045 (28000)问题解决
    Unsupervised Pretraining Transfers well Across Languages
    由声学特征重建语音波形-声码器的最近进展
    神经机器翻译中有用的技巧
    多语种神经机器翻译
    利用Fairseq训练新的机器翻译模型
    转:Linux 系统忘记密码 -> 修改 Ubuntu 虚拟机密码
    Linux安装与配置Tomcat
  • 原文地址:https://www.cnblogs.com/liu666bin/p/2915880.html
Copyright © 2011-2022 走看看