Android 用meta-data配置参数
https://blog.csdn.net/r8HZGEmq/article/details/8228423
一,在activity中
xml中配置如下
- <!-- Activity -->
- <activity android:name=".MyActivity" android:label="@string/app_name">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- <meta-data android:name="activity_name" android:value="activity_value" />
- </activity>
- ActivityInfo actInfo = mContext.getPackageManager().getActivityInfo(
- getComponentName(), PackageManager.GET_META_DATA);
- String msg = actInfo.metaData.getString("activity_name");
xml中配置如下
- <!-- 服务 -->
- <service android:name=".MyService">
- <meta-data android:name="service_name" android:value="service_value" />
- </service>
- ComponentName cn = new ComponentName(this, MyService.class);
- try {
- ServiceInfo serInfo = this.getPackageManager().getServiceInfo(cn,
- PackageManager.GET_META_DATA);
- } catch (NameNotFoundException e) {
- e.printStackTrace();
- }
- String msg = serInfo.metaData.getString("service_name");
三,在application中
xml中配置如下
- <!-- app -->
- <meta-data android:name="application_name" android:value="application_value" />
- ApplicationInfo appInfo = this.getPackageManager().getApplicationInfo(
- getPackageName(), PackageManager.GET_META_DATA);
- String msg = appInfo.metaData.getString("application_name");
四,在receiver中,也就是广播接收者(拨打电话的时候会看到toast消息)
xml中配置如下
- <receiver android:name=".MyReceiver">
- <meta-data android:name="receiver_name" android:value="receiver_value" />
- <intent-filter>
- <action android:name="android.intent.action.PHONE_STATE" />
- </intent-filter>
- </receiver>
- if (TextUtils.equals("android.intent.action.PHONE_STATE", intent
- .getAction())) {
- ComponentName cn = new ComponentName(context, MyReceiver.class);
- try {
- ActivityInfo info = context.getPackageManager().getReceiverInfo(cn,
- PackageManager.GET_META_DATA);
- } catch (NameNotFoundException e) {
- e.printStackTrace();
- }
- String msg = info.metaData.getString("receiver_name");
- // 打电话测试即可
- Toast.makeText(context, msg, Toast.LENGTH_SHORT).show();
- }
最后更新:2017-04-03 12:54:04
上一篇:
工作中常用的Linux命令
下一篇:
word中插入题注(表1、图1)
QT中的多线程-与主线程通信
Python对象认知(1)
SQL语句中where 1=1的基本用法
Java线程之锁研究
Windows下Android项目搭建Jenkins持续构建+自动化测试
游戏安全资讯精选 2017年 第二期:攻击“王者荣耀”的勒索病毒SLocker解读,微软SMB 0day和Sorebrect勒索攻击预警
从达标到卓越 —— API 设计之道
《vSphere性能设计:性能密集场景下CPU、内存、存储及网络的最佳设计实践》一3.3.4 定义IOmeter的工作负载和配置
解决json转换问题:net.sf.ezmorph.bean.MorphDynaBean cannotbe cast to xxx
在Hadoop上运行Docker容器的六大陷阱