Meta-data的作用和自定义

简介: 经常用第三方库的同学们应该经常会用到mata-data这个标签,, 比如:这一段就是百度地图的用户信息配置那么他的作用很明显就是用来配置用户信息的, 但是百度地图是怎么获取到我们在manifest中定义的信息的呢...

经常用第三方库的同学们应该经常会用到mata-data这个标签,, 比如:

<meta-data android:name="com.baidu.lbsapi.API_KEY" 

android:value="***************************USER-KEY****************" />

这一段就是百度地图的用户信息配置


那么他的作用很明显就是用来配置用户信息的, 但是百度地图是怎么获取到我们在manifest中定义的信息的呢?

答案是: 我们在配置百度地图的时候不仅在menifest中配置了信息, 还在Application中信息

SDKInitializer.initialize(getApplicationContext());

而这句话里面就包括了百度地图对已meta-data的数据的获取;


现在我们自己来尝试进行mata-data数据的获取:

首先我们在menifest中定义meta-data, 可以定义在Activity标签下, 也可以定义在application标签下;

我们用activity下的进行尝试:

        <activity android:name=".activity.PrjSelectActivity">
            <meta-data
                android:name="META-DATA-TEST"
                android:value="i am meta-data" />
        </activity>

然后再activity中进行如下操作:

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        //1.这里获取meta-data对应的参数的值. 
        try {
        //2.首先获取包管理器,通过包管理器,取得组件信息.
            //3..getActivityInfo(第一个参数,取得组件的名称.
            //new ComponentName(this, MetadataActivity.class)用来获取这个组件的信息.
            //PackageManager.GET_META_DATA指定取得信息的类型.
            ActivityInfo activityInfo = this.getPackageManager().getActivityInfo(
                    new ComponentName(this, MetadataActivity.class), PackageManager.GET_META_DATA);
            Bundle bundle = activityInfo.metaData;//返回一个Bundle对象.
            //从bundle获取,<meta-data>设定的值.
            String name = bundle.getString("META-DATA-TEST");
            String app = bundle.getString("password");
        //通过吐司打印出来<meta-data>设定的值.
            Log.e(TAG, name + app);
        } catch (NameNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

当然我们也可以用获取到的meta-data进行更加详细的操作, 比如百度地图, 当然就是将这个meta-data的信息进行验证了.
目录
相关文章
|
JSON API 数据格式
Uniapp~动态修改 请求头的content-type 的值
Uniapp~动态修改 请求头的content-type 的值
1291 0
Uniapp~动态修改 请求头的content-type 的值
|
5月前
|
机器学习/深度学习 监控 物联网
函数计算操作报错合集之调用接口提示Cannot copy out of meta tensor; no data! 是什么原因
在使用函数计算服务(如阿里云函数计算)时,用户可能会遇到多种错误场景。以下是一些常见的操作报错及其可能的原因和解决方法,包括但不限于:1. 函数部署失败、2. 函数执行超时、3. 资源不足错误、4. 权限与访问错误、5. 依赖问题、6. 网络配置错误、7. 触发器配置错误、8. 日志与监控问题。
194 0
|
2月前
|
移动开发 前端开发 JavaScript
Twaver-HTML5基础学习(3)基本数据元素(Data)其他功能函数以及组Group
本文介绍了Twaver HTML5中Data类的其他功能函数,如获取和操作子网元的方法,以及组(Group)的概念和使用。文章通过示例代码展示了如何在React组件中创建组、添加图元到组中,并通过toChildren函数获取满足特定条件的图元。
36 0
Twaver-HTML5基础学习(3)基本数据元素(Data)其他功能函数以及组Group
|
2月前
|
前端开发 JavaScript
html中id和class的相同和不同之处及用法的规范与区别
在HTML中,`id`和`class`都用于标识和选择元素,但存在一些关键差异。
|
6月前
|
搜索推荐 机器人 索引
meta的标签的作用是什么
meta的标签的作用是什么
|
12月前
解决无法读取META-INF.services里面定义的类
解决无法读取META-INF.services里面定义的类
137 0
|
JavaScript 前端开发 数据安全/隐私保护
HTML中input常用的type属性及使用场景
HTML中input常用的type属性及使用场景
197 0
HTML中a标签的target属性的取值和作用--详解(附加代码)
HTML中a标签的target属性的取值和作用--详解(附加代码)
258 0
|
移动开发 HTML5
Html5新属性Data-type的作用
Html5新属性Data-type的作用
389 0
Html5新属性Data-type的作用
|
移动开发 JavaScript 前端开发
HTML5的 input:file上传类型控制
原文:HTML5的 input:file上传类型控制 HTML5的 input:file上传类型控制 2014年8月29日 90820次浏览 一、input:file属性 属性值有以下几个比较常用: accept:表示可以选择的文件MIME类型,多个MIME类型用英文逗号分开,常用的MIME类型见下表。
1574 0