AndroidManifest 中的 meta-data 常见于我们使用第三方 SDK 时,如腾讯的 SDK,如友盟统计,配置 appid 会用上,实际 meta-data 可做的远不止这些。今天某一功能个性化用到了 meta-data 看一下这个似乎不大的小家伙
meta-data 是应用的清单文件 AndroidManifest.xml 中application,activity,activity-alias,provider,receiver,service 下的子标签,比intent-filter 多些父标签,像友盟这些统计服务一般只需要一个 AppID 等, 只需要定义在 Application 中,如果你想给某个组件添加 meta-data ,那么meta-data必须定义在其组件申明内。
事实上,meta-data 我们拿到的时候是一个 Bundle ,知道了这一点,我们就可以不畏惧它了,不信你看。
public Bundle metaData;
先看一下友盟的应用场景,在Application中定义APPID, 我们也可以直接给一个resource给meta-data
....
android:name="test"
android:value="test77888">
获取Application中的meta-data方法:
ApplicationInfo appInfo = null;
appInfo = this.getPackageManager()
.getApplicationInfo(getPackageName(), PackageManager.GET_META_DATA);
Bu