1.应用通信

ContentProvider是一个Android组件,它提供了一个标准接口来在不同的应用程序之间共享数据。它充当应用程序和数据源之间的中介,数据源可以是SQLite数据库、文件,甚至是远程服务器。ContentProvider提供了一组方法来管理对数据的访问,例如查询、插入、更新和删除数据。它还支持内容URI,这些URI是表示一段数据的唯一标识符。
另一方面,ContentResolver是应用程序用来访问ContentProviders数据的另一个Android组件。ContentResolver负责查找并与保存请求数据的相应ContentProvider通信。它提供了一组方法来查询ContentProviders、插入、更新和删除数据,以及注册ContentObserver以侦听数据中的更改。
简单来说ContentProvider封装应用的数据,另一个应用想要访问该应用的数据,可以使用ContentResolver来调用ContentProvider中的增删查改方法。
2.代码
ContentProvider:
package com.example.ch07_server;
import android.content.ContentProvider;
import android.content.ContentValues;
import android.content.UriMatcher;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.net.Uri;
import android.util.Log;
import com.example.ch07_server.database.DBHelper;
public class ServerContentProvider extends ContentProvider {
private DBHelper dbHelper;
private static final String authority = "com.example.ch07_server.ServerContentProvider";
private static final UriMatcher URI_MATCHER = new UriMatcher(UriMatcher.NO_MATCH);
private static final int USERS = 1;
private static final int USER = 2;
static {
URI_MATCHER.addURI(auth

最低0.47元/天 解锁文章
1060

被折叠的 条评论
为什么被折叠?



