zoukankan      html  css  js  c++  java
  • 获取AndroidManifest.xml中的meta-data元素

    android 开发中:

    在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
            android:name=".main.MyApplication"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name" >
    
            <meta-data
                android:name="RONG_CLOUD_APP_KEY"
                android:value="m7ua80" />
        </application>
    复制代码


      
       java代码段:

    复制代码
              ApplicationInfo appInfo;
                    try {
                        appInfo = MyApplication.this.getPackageManager()
                                .getApplicationInfo(MyApplication.this.getPackageName(), PackageManager.GET_META_DATA);
                        String msg = appInfo.metaData.getString("RONG_CLOUD_APP_KEY");
    
                    } catch (NameNotFoundException e1) {
                        // TODO Auto-generated catch block
                        e1.printStackTrace();
                    }
    复制代码

    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 );

  • 相关阅读:
    微信小程序 开发 微信开发者工具 快捷键
    .NET 4.0 任务(Task)
    MVC UpdateModel的未能更新XXXXX的类型模型
    ORACLE 定时执行存储过程
    DotNet 资源大全中文版(Awesome最新版)
    基于SignalR实现B/S系统对windows服务运行状态的监测
    Method not found: '!!0[] System.Array.Empty()'.
    MVC-RedirectToAction跳转到其他Area
    C# where用法
    C#委托的介绍(delegate、Action、Func、predicate)
  • 原文地址:https://www.cnblogs.com/Jeely/p/11040400.html
Copyright © 2011-2022 走看看