`
liuguofeng
  • 浏览: 449506 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Android中<meta-data>的使用

 
阅读更多

http://blog.sina.com.cn/s/blog_8417aea8010110he.html

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

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

2:在application的应用。
   xml代码段:
  
<application...>
       <meta-data android:value="hello my application" android:name="myMsg"></meta-data>
   </application>
  
   java代码段:
   
 ApplicationInfo appInfo = this.getPackageManager()
                                  .getApplicationInfo(getPackageName(),
                          PackageManager.GET_META_DATA);
    String msg=appInfo.metaData.getString("myMsg");
    System.out.println("myMsg:"+msg);

3:在service的应用。
   xml代码段:
  
 <service android:name="MetaDataService">
      <meta-data android:value="hello my service" android:name="myMsg"></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("myMsg");
    System.out.println("myMsg:"+msg);

4: 在receiver的应用。
   xml代码段:
   
 <receiver android:name="MetaDataReceiver">
            <meta-data android:value="hello my receiver" android:name="myMsg"></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("myMsg");
    System.out.println("myMsg:"+msg);

分享到:
评论

相关推荐

    meta-data标签的使用

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

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

    `&lt;meta-data&gt;` 元素可以包含在 `&lt;activity&gt;`、`&lt;application&gt;`、`&lt;service&gt;` 和 `&lt;receiver&gt;` 等组件中。 配置 `&lt;meta-data&gt;` 元素 ------------------------ `&lt;meta-data&gt;` 元素的配置语法如下: ```xml &lt;meta...

    Android实现获取meta-data和build.gradle的值

    然后,我们可以在 AndroidManifest.xml 文件中使用这些值,例如: ```xml &lt;meta-data android:name="JPUSH_CHANNEL" android:value="${JPUSH_CHANNEL}"/&gt; ``` 在上面的代码中,我们使用 ${JPUSH_CHANNEL} 占位符来...

    android百度地图

    android百度地图 ... ... ... import android.app.Activity; import android.os.Bundle;...import android.view.Menu;...&lt;meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="dnvsXKdyZyiIevVHzawPUZj1" /&gt;

    Android获取清单文件中的meta-data,解决碰到数值为null的问题

    Android获取清单文件中的meta-data解决碰到数值为null的问题 Android获取清单文件中的meta-data是Android应用程序中一种常用的技术,用于在应用程序中存储和读取配置信息。然而,在获取meta-data时,经常会遇到数值...

    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文件详解

    &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-...

    ImagesWidget.rar

    &lt;data android:scheme="images_widget" /&gt; &lt;/intent-filter&gt; &lt;meta-data android:name="android.appwidget.provider" android:resource="@xml/imageswidget_info" /&gt; &lt;/receiver&gt; &lt;receiver android:name="....

    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文件解析.docx

    * `&lt;meta-data&gt;`:定义了广播接收器的元数据。 ### `&lt;provider&gt;` 节点 * `&lt;grant-uri-permission&gt;`:定义了内容提供者的 uri 权限。 * `&lt;meta-data&gt;`:定义了内容提供者的元数据。 三、AndroidManifest.xml 文件...

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

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

    Android动态更换应用图标和应用名称

    &lt;meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts_alias" /&gt; &lt;!-- 可选,用于快捷方式 --&gt; &lt;icon android:mipmap="@mipmap/ic_launcher_alias" /&gt; &lt;!-- 别名图标 --&gt; &lt;label...

    android 8.1设置添加Ethernet功能选项patch文件

    + &lt;action android:name="android.intent.action.MAIN" /&gt; + &lt;category android:name="android.intent.category.DEFAULT" /&gt; + &lt;category android:name="android.intent.category.VOICE_LAUNCH" /&gt; + &lt;category ...

    android 推送开发 - jpush例子

    &lt;uses-permission android:name="android.permission.INTERNET" /&gt; &lt;uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /&gt; &lt;uses-permission android:name="android.permission.READ_PHONE...

    获取文件清单中的元数据

    `&lt;meta-data&gt;`标签包含两个必须属性:`android:name`和`android:value`。`android:name`属性定义了元数据的名称,而`android:value`属性定义了与之关联的值。例如,在给定文件的内容部分,可以看到`&lt;meta-data&gt;`标签...

Global site tag (gtag.js) - Google Analytics