Android——metaData

获取元数据信息的步骤:
  • 调用 getPackageManager 方法获得当前应用的包管理器
  • 调用包管理器的 getActivityInfo 方法获得当前活动的信息对象
  • 活动信息对象的 metaData 是 Bundle 包裹类型,调用包裹对象的 getString 即可获得指定名称的参数值

配置 metaData

xml 复制代码
	<meta-data android:name="weather" android:value="晴天"/>
xml 复制代码
   <activity
         android:name=".MetaDataActivity"
         android:exported="true">
         <meta-data android:name="weather" android:value="晴天"/>
     </activity>

获取metaData

java 复制代码
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_meta_data);

        TextView tv_meta = findViewById(R.id.tv_meta);
        //获取应用包管理
        PackageManager packageManager = getPackageManager();

        try {
            //从应用包管理器中获取当前的活动信息
            ActivityInfo info = packageManager.getActivityInfo(getComponentName(), PackageManager.GET_META_DATA);
            //获取活动附加的元数据信息
            Bundle bundle = info.metaData;
            String weather = bundle.getString("weather");
            tv_meta.setText(weather);
        } catch (PackageManager.NameNotFoundException e) {
            throw new RuntimeException(e);
        }
    }

案例代码

相关推荐
Mac的实验室2 小时前
(2026年最新)解决谷歌账号注册设备扫码短信发送失败无法验证难题(100%通过无需扫码验证)
android·google·程序员
半条咸鱼3 小时前
如何通过 ADB 连接安卓设备(USB + 无线 TCP/IP)
android
huwuhang3 小时前
斐讯盒子N1_YYFROM固件_webview119更新版附安卓专用遥控器刷机固工具USB_Burning_Tool
android
qq_352018683 小时前
android 状态栏高度获取
android
AirDroid_cn3 小时前
安卓15平板分屏比例能到1:9吗?极限分屏设置教程
android·智能手机
菜鸟国国4 小时前
还在为 Compose 屏幕适配发愁?一个 Density 搞定所有机型!
android
卡尔特斯4 小时前
Android Studio 代理配置指南
android·前端·android studio
sunbofiy234 小时前
去掉安卓的“读取已安装应用列表”,隐私合规
android
cch89184 小时前
DCATAdmin后台框架极速上手
android
Ehtan_Zheng4 小时前
ActivityMetricsLogger 深度剖析:系统如何追踪启动耗时
android