lgxqf  

 

Android 通过Uri来定义资源的位置。


Content Proivder
    它是不同应用程序间共享数据的唯一方法。
    Content Provider通过URI来查询表中的数据。每个表都必须有一列为_Id
    Content Provider资源的标准URI结构:
        <standard_prefix>://<authority>/<data_path>/<id>
        所有的providers的standard_prefix都是content
        例如:
        1) 取得浏览器所有“书签”信息: content://browser/bookmarks
        2) 取得系统通讯录中的信息: content://contacts/people (如果取得某一个特定通讯记录,在路径URI的末端指定一个ID号:content://contacts/people/5)
        
        Android提供的Content Providers列表 D:/Linux/Adnroid%20Tools/android-sdk-windows-1.5_r3/docs/reference/android/provider/package-summary.html
    
Intent 显示调用
    process内部 intent显示调用
        一个process中的activity需要相互访问时,可以用intent的显示调用完成相应操作
        Intent intent = new Intent(this, TestActivity.class);
        startActivity(intent);
        在manifest中声明指定加入新的acivity标签,并指定其所用的Java class是TestActivity.class
        <activity android:name=".ShowMeActivity" />
    process外部 intent显示调用
        需指写包名和class的名称
        Intent intent = new Intent();
        intent.setClassName("com.tope.samples.intent.simple", "com.tope.samples.intent.simple.TestActivity");
        第一个参数为包名,第二个参数为包内的acivity所对应的class的名称
        
指定process中的启动activity
    当一个process中有多个activity时,manifest.xml中包含下面内容的acvitity为process时启动时调用的activity
    详细阅读SDK中关于activtion name部分的内容 会对.HelloActivity前面的"."做详细解释
    <activity android:name=".HellowActivity" android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

显示当前系统定义的permission
    adb shell pm list permissions

Intent中的action的值与其它activity中定义的intent-filter中的 action的name 是相对应的。
    若Activity A中的intent filter定义如下:
        <intent-filter>
            <action android:name="com.irdeto.test" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    若想在Activity B中启动 Activity A 那么它需要在intent的action传入com.irdeto.test
        Intent intent = new Intent("com.irdeto.test");
        StartActivity(intent);
posted on 2010-01-20 09:58  Justin_Ma  阅读(349)  评论(0)    收藏  举报