`

Android获取Manifest中<meta-data>元素的值

阅读更多
在AndroidManifest.xml中,<meta-data>元素可以作为子元素,
被包含在<activity>、<application> 、<service>和<receiver>元素中,
不同的父元素,在应用时读取的方法也不同。

1 :在Activity应用<meta-data>元素。
    xml代码段:
   <activity...>
       <meta-data android:name="data_Name" android:value="hello my activity"></meta-data>
    </activity>
  
    java代码段:
   ActivityInfo info=this.getPackageManager()
                          .getActivityInfo(getComponentName(),
                          PackageManager.GET_META_DATA);
    String msg =info.metaData.getString("data_Name");
    Log.d(TAG, " msg == " + msg );

2:在application应用<meta-data>元素。
   xml代码段:
  <application...>
       <meta-data android:value="hello my application" android:name="data_Name"></meta-data>
   </application>
 
   java代码段:
    ApplicationInfo appInfo = this.getPackageManager()
                                  .getApplicationInfo(getPackageName(),
                          PackageManager.GET_META_DATA);
    String msg=appInfo.metaData.getString("data_Name");
    Log.d(TAG, " msg == " + msg );

3:在service应用<meta-data>元素。
   xml代码段:
   <service android:name="MetaDataService">
      <meta-data android:value="hello my service" android:name="data_Name"></meta-data>
   </service>

   java代码段:
   ComponentName cn=new ComponentName(this, MetaDataService.class);
   ServiceInfo info=this.getPackageManager()
                        .getServiceInfo(cn, PackageManager.GET_META_DATA);
    String msg=info.metaData.getString("data_Name");
    Log.d(TAG, " msg == " + msg );

4: 在receiver应用<meta-data>元素。
   xml代码段:
    <receiver android:name="MetaDataReceiver">
            <meta-data android:value="hello my receiver" android:name="data_Name"></meta-data>
            <intent-filter>
                <action android:name="android.intent.action.PHONE_STATE"></action>
            </intent-filter>
    </receiver>
   java代码段:
    ComponentName cn=new ComponentName(context, MetaDataReceiver.class);
    ActivityInfo info=context.getPackageManager()
                             .getReceiverInfo(cn, PackageManager.GET_META_DATA);
    String msg=info.metaData.getString("data_Name");
    Log.d(TAG, " msg == " + msg );
分享到:
评论

相关推荐

    meta-data标签的使用

    在Android开发中,`meta-data`标签是AndroidManifest.xml文件中的一个重要组成部分,它允许开发者在应用的配置中存储额外的数据。这些数据可以是字符串、整数或其他任何可以在XML中表示的类型,通常用来保存第三方库...

    Android Manifest中meta-data扩展元素数据的配置与获取方式

    Android Manifest中meta-data扩展元素数据的配置与获取方式 AndroidManifest.xml 文件是 Android 应用程序的配置文件,用于定义应用程序的组件、权限、特性和其他元数据。在 AndroidManifest.xml 文件中,我们可以...

    Androidmanifest.xml文件分析

    &lt;meta-data/&gt; &lt;/activity-alias&gt; &lt;service&gt; &lt;intent-filter&gt;&lt;/intent-filter&gt; &lt;meta-data/&gt; &lt;/service&gt; &lt;receiver&gt; &lt;intent-filter&gt;&lt;/intent-filter&gt; &lt;meta-data/&gt; &lt;/receiver&gt; &lt;provider&gt; &lt;grant-uri-...

    学习笔记之AndroidManifest.xml文件解析.docx

    * `&lt;manifest&gt;`:根元素,定义了整个 Android 程序的配置信息。 * `&lt;application&gt;`:定义了应用程序的组件,包括活动(activities)、服务(services)、内容提供者(content providers)、广播接收器(broadcast ...

    Bilibili接入详细说明

    4. **更新strings.xml文件**:在项目的`res/values/strings.xml`文件中添加相应的字符串资源,以匹配`&lt;meta-data&gt;`标签中的值。例如: ```xml &lt;string name="cpid"&gt;15&lt;/string&gt; &lt;string name="appid"&gt;31&lt;/string...

    AndroidManifest.xml文件详解

    &lt;meta-data/&gt; &lt;/activity-alias&gt; &lt;service&gt; &lt;intent-filter&gt;&lt;/intent-filter&gt; &lt;meta-data/&gt; &lt;/service&gt; &lt;receiver&gt; &lt;intent-filter&gt;&lt;/intent-filter&gt; &lt;meta-data/&gt; &lt;/receiver&gt; &lt;provider&gt; &lt;grant-uri-...

    AndroidManifest.xml文件综合详解[整理].pdf

    - `&lt;meta-data&gt;`:附加元数据信息。 - `&lt;activity-alias&gt;`:为Activity创建别名。 - `&lt;service&gt;`:后台运行的组件。 - `&lt;receiver&gt;`:接收广播事件的组件。 - `&lt;provider&gt;`:管理数据并提供给其他应用使用的...

    Android开启超级管理员权限源码(Android Studio Module)

    &lt;meta-data android:name="android.app.device_admin" android:resource="@xml/device_admin" /&gt; &lt;intent-filter&gt; &lt;action android:name="android.app.action.DEVICE_ADMIN_ENABLED" /&gt; &lt;/intent-filter&gt; &lt;/...

    2AndroidManifest文件介绍.docx

    &lt;meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/provider_paths"/&gt; &lt;/provider&gt; ``` - **`android:name`**:内容提供者的类名。 - **`android:authorities`**:提供者的...

    Android-Android自定义键盘数字键盘和字母键盘

    &lt;meta-data android:name="android.view.im.meta" android:resource="@xml/method" /&gt; &lt;/service&gt; ``` 5. 创建method.xml 在res/xml目录下创建一个method.xml文件,用于配置InputMethodService的相关属性,如...

    通过AccessibilityService实现系统按键监听

    &lt;meta-data android:name="android.accessibilityservice" android:resource="@xml/accessibility_service_config" /&gt; &lt;/service&gt; ``` 在 resources/xml 目录下创建 accessibility_service_config.xml 文件,配置...

    百度地图获得详细地址,城市,省份,街道等

    &lt;meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="输入你注册得到的秘钥" /&gt;&lt;!-- 这里输入百度地图api ak密匙 --&gt; 3.实现onaddresscallback接口,用于获得位置后回调 4.new BDLBSMapHelper()....

    Java读取android apk信息

    此外,依赖库的获取可能涉及到解析`&lt;uses-library&gt;`标签,或者通过分析`&lt;application&gt;`标签内的`&lt;meta-data&gt;`元素来确定。 总结来说,纯Java读取Android APK信息涉及到的知识点包括: - Java ZIP文件操作:`java....

Global site tag (gtag.js) - Google Analytics