不错的帖子:

Android漂亮蘑菇街UI界面
http://www.eoeandroid.com/thread-211482-1-1.html

Android 3D 乡村赛车 完整代码
http://www.eoeandroid.com/thread-211471-1-1.html

乐看播放器源代码,对写视频播放的人来说非常有用
http://www.eoeandroid.com/thread-211494-1-1.html

--------------------------------帖子正文---------------------

1.首先新建一个Aapp应用程序,还是需要使用到上一章的数据

package cn.itcast.app;import android.app.Activity;import android.content.ContentResolver;import android.content.ContentValues;import android.net.Uri;import android.os.Bundle;import android.view.View;public class MainActivity extends Activity {        /**     * 监听ContentProvider(内容提供者)中的数据变化     * 为什么要监听?     * 例:此时有A应用和B应用,A应用向ContentProvider添加一条数据     * 而此时B应用若想知道A应用做了什么操作,则需ContentProvider通知     * ContentProvider会发出数据变化通知,B应用听过监听ContentProvider得到通知     */            @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);    }                public void insert(View v){            Uri uri = Uri.parse("content://cn.itcast.providers.personprovider/person");            ContentResolver resolver = this.getContentResolver();            ContentValues values = new ContentValues();            values.put("name", "lixiao");            values.put("phone", "123456789");            values.put("amount", "500");            resolver.insert(uri, values);    }    }
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:orientation="vertical" >    <Button        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:onClick="insert"        android:text="@string/button" /></LinearLayout>
<?xml version="1.0" encoding="utf-8"?><resources>    <string name="hello">Hello World, MainActivity!</string>    <string name="app_name">A应用</string>    <string name="button">往内容提供者添加数据</string></resources>

使用上章的Other程序作用B应用程序,监听ContentProvider

package cn.itcast.other;import android.app.Activity;import android.content.ContentResolver;import android.content.Context;import android.database.Cursor;import android.net.Uri;import android.os.Bundle;import android.os.Handler;import android.util.Log;import android.widget.Toast;public class MainActivity extends Activity {    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                Uri uri = Uri.parse("content://cn.itcast.providers.personprovider/person");            //注册一个数据变化监听器                this.getContentResolver().registerContentObserver(uri, true, new PersonContentObserver(new Handler()));    }        private class PersonContentObserver extends ContentResolver{                public PersonContentObserver(Handler handler) {                        super(handler);                }                                public void onChange(boolean selfChange) {                        // TODO Auto-generated method stub                        Uri uri = Uri.parse("content://cn.itcast.providers.personprovider/person");                        Cursor cursor = getContentResolver().query(uri, null, null, null, "personId desc limit 1");                        if(cursor.moveToFirst()){                                String name = cursor.getString(cursor.getColumnIndex("name"));                                Log.i("MainActivity", name);                        }                }    }}

更多相关文章

  1. “罗永浩抖音首秀”销售数据的可视化大屏是怎么做出来的呢?
  2. Nginx系列教程(三)| 一文带你读懂Nginx的负载均衡
  3. 不吹不黑!GitHub 上帮助人们学习编码的 12 个资源,错过血亏...
  4. TabHost 切换带滑动及tab页的数据添加
  5. 转:android笔记之contacts(通讯录)数据库
  6. android sqlite查询数据表的字段与相关属性
  7. Activity 以及 Intent的使用
  8. android通过自定义toast实现悬浮通知效果的示例代码
  9. 关于Android中获取Intent里的数据

随机推荐

  1. Android支持HTML标签
  2. Java 字节码编译为Dex,d8比dx更好用!
  3. Android(安卓)Studio中使用adb shell查看
  4. android文本内容自动朗读实例教程
  5. android利用线程池高效实现异步任务
  6. Android中用Spannable在TextView中给文字
  7. 有关android内存泄露的问题以及解决方案
  8. android中checkbox文字和复选框的间距设
  9. 手机敲命令利器---Android(安卓)Terminal
  10. Unknown error: Unable to build: the fi