Android开发之AndroidManifest

<meta-data>

<application 
    android:icon="@drawable/icon" 
    android:label="@string/app_name">
    <meta-data android:name="com.grooter.testName" android:value="testValue" />
    ....

<meta-data><application内,<activity外则:

ApplicationInfo ai = getPackageManager().getApplicationInfo(getPackageName(), PackageManager.GET_META_DATA);
Bundle bundle = ai.metaData;
String str= bundle.getString("com.grooter.testName");
<application
    android:icon="@drawable/icon" 
    android:label="@string/app_name">
    <activity>
       <meta-data android:name="com.grooter.testName" android:value="testValue"/>
    </activity>
    ...

若在<meta-data><activity内则:

   ActivityInfo info=this.getPackageManager().getActivityInfo(getComponentName(),PackageManager.GET_META_DATA);
    String str=info.metaData.getString("com.grooter.testName");

<activity-alias>

详见:activity-alias详解及应用

Android版本限制

<manifest ... >
    <uses-feature android:name="android.hardware.camera.any"
                  android:required="true" />
    <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" />
    ...
</manifest>

以上代码则限定android版本不得低于2.1,否则无法安装该应用。
android:required=”true”则表示需要使用照相机,若为false则暂不使用照相机,在运行时才检查是否有照相机

<data>

        intent.setType("type");
        intent.setData(Uri.parse("lee://www.grooter.com:5304/data"));

data会覆盖type

        intent.setData(Uri.parse("lee://www.grooter.com:5304/data"));
        intent.setType("type");

type会覆盖data

若想同时设置data和type则需:

        intent.setDataAndType(Uri.parse("lee://www.grooter.com:5304/data"),"type");     

打开指定Activitu:

<data android:scheme="lee" />
        Intent intent=new Intent();
        intent.setData(Uri.parse("lee://www.grooter.com:5304/data"));
        startActivity(intent);

由于只设置了需要满足*scheme=”lee”即可打开该activity,而“lee://www.grooter.com:5304/data”满足该条件

<data android:scheme="lee" 
android:host="www.grooter.org"
android:port="5312"/>

由于设置了需要满足host=”www.grooter.org”,而“lee://www.grooter.com:5304/data”不满足该条件。
若想要打开该activity,则需``intent.setData(Uri.parse("lee://www.grooter.org:5312/data"));

即至少要满足在<data>中是设置的条件
注意:以上借鉴于Intent的属性及Intent-filter配置——Data、Type属性与intent-filter配置

猜你喜欢

转载自blog.csdn.net/figurers/article/details/79426748
今日推荐