Android之读取 AndroidManifest.xml 中的数据
转:http://www.2cto.com/kf/201208/151123.html
下来示例如何读取这些数据。
1 版本信息、应用名称
2 Appliction 的Meta-data
3 Activity中的Meta-data
AndroidManifest.xml中的定义如下:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="hpc.cai.test01"
android:versionCode="1"
android:versionName="1.0" >
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<meta-data
android:name="tel"
android:value="cdma-13366350377" >
</meta-data>
<meta-data
android:name="channel"
android:value="eben" />
<activity
android:name="hpc.cai.test.Test1Activity"
android:label="@string/app_name" >
<meta-data
android:name="name"
android:value="自强不息" >
</meta-data>
<meta-data
android:name="city"
android:value="北京" />
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
java 代码:
/**
* activity MetaData读取
*/
private void testActivityMetaData() {
ActivityInfo info;
try {
info = getPackageManager().getActivityInfo(getComponentName(),
PackageManager.GET_META_DATA);
String msg = info.metaData.getString("name");
System.out.println("name:" + msg);
msg = info.metaData.getString("city");
System.out.println("city:" + msg);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* appliction MetaData读取
*/
private void testApplicationMetaData() {
ApplicationInfo info;
try {
info = this.getPackageManager().getApplicationInfo(
getPackageName(), PackageManager.GET_META_DATA);
String msg = info.metaData.getString("tel");
System.out.println("tel:" + msg);
msg = info.metaData.getString("channel");
System.out.println("channel:" + msg);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 测试版本信息
*/www.2cto.com
private void getVersion(){
PackageInfo pkg;
try {
pkg = getPackageManager().getPackageInfo(getApplication().getPackageName(), 0);
String appName = pkg.applicationInfo.loadLabel(getPackageManager()).toString();
String versionName = pkg.versionName;
System.out.println("appName:" + appName);
System.out.println("versionName:" + versionName);
} catch (NameNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
输出如下:
16:37:54.442: I/System.out(10213): appName:Test1
16:37:54.442: I/System.out(10213): versionName:1.0
16:37:54.442: I/System.out(10213): tel:cdma-13366350377
16:37:54.442: I/System.out(10213): channel:eben
16:37:54.452: I/System.out(10213): name:自强不息
16:37:54.452: I/System.out(10213): city:北京
Android之读取 AndroidManifest.xml 中的数据的更多相关文章
- Android之读取 AndroidManifest.xml 中的数据:版本号、应用名称、自定义K-V数据(meta-data)
AndroidManifest.xml中的定义如下: <manifest xmlns:android="http://schemas.android.com/apk/res/andro ...
- Android APP 读取 AndroidManifest.xml 中的版本信息详解
APP都会涉及到版本的问题,Android APP的版本信息保存在AndroidManifest.xml文件的顶部.如下图: 有2个属性表示,“android:versionCode”和“androi ...
- AndroidManifest.xml中<activity></activity>相关属性说明
虽说,从事android开发有一定时间了,对于Activity大家也都不陌生,但是具体的对于Activity中相关属性的含义有必要做一个系统的总结: intent-filteraction: 来指定响 ...
- Android Studio 学习 - AndroidManifest.xml文件学习
首先,今天发现了一个很牛逼的教程网站:慕课网(http://www.imooc.com/).有很多大牛发布的教学视频.值得收藏.学习. 今天主要参照陈启超老大的视频,学习了多个Activity之间的切 ...
- 获取AndroidManifest.xml中的meta-data元素
android 开发中: 在AndroidManifest.xml中,<meta-data>元素可以作为子元素, 被包含在<activity>.<application& ...
- Android Studio常见问题 -- AndroidManifest.xml 覆盖问题
问题如下 D:\source-code\AndroidStudio\MyApplication\app\src\main\AndroidManifest.xmlError:(14, 9) Attrib ...
- 8.0后广播在AndroidManifest.xml中注册后发送intent接收不到广播
8.0后广播在AndroidManifest.xml中注册后发送intent是接收不到广播了,看了一下原因,好像是8.0为了管理系统和节约电量特别针对广播和服务发送intent的方式启动做出的改变,也 ...
- CSS控制XML与通过js解析xml然后通过html显示xml中的数据
使用CSS控制XML的显示 book.css bookname{ display:block;color:Red} author{ display:block;font-style:italic} p ...
- 利用java反射机制实现读取excel表格中的数据
如果直接把excel表格中的数据导入数据库,首先应该将excel中的数据读取出来. 为了实现代码重用,所以使用了Object,而最终的结果是要获取一个list如List<User>.Lis ...
随机推荐
- 使用T4模板为EF框架添加实体根据数据库自动生成字段注释的功能
转自http://jeffblog.sinaapp.com/archives/501 首先我们先下载一个文件GetSummery,这里我提供了,大家可以直接下载:下载 我们在数据库建立一个表,并给表中 ...
- ACM——A + B Problem (2)
A + B Problem (2) 时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte总提交:2600 测试通过:137 ...
- 那天有个小孩跟我说LINQ(六)转载
2 LINQ TO SQL完结(代码下载) 我们还是接着上次那个简单的销售的业务数据库为例子,打开上次那个例子linq_Ch5 2.1 当数据库中的表建立了主外键 ①根据主键获取子表信息 ...
- ios6-7以后用户开热点后的屏幕适配
// 排版时,注意logical coordinate space和device coordinate space的区别,注意frame和bounds的区别! - (void)loadView { / ...
- iOS开发——常用字符串string相关方法和处理
(持续更新中……) 1,四舍五入 2,剔除字符 3,拼接字符 4,字符个数和长度 5,字符串的比较 6,字符串的范围 7,字符串转Number类型
- jQuery表格操作
$("#tableid tr:gt(0)").each(function(i){ $(this).children("td").each(function(j) ...
- CSS当中color的四种表示方法
这是我的第一篇博客,所以写的东西会比较简单. css当中,好多地方都会用到color属性,用来使html内容丰富多彩,例如:background-color:border-color: 第一种表示法使 ...
- ubuntu 安装phpmyadmin
参考文章: http://www.111cn.net/database/mysql/43957.htm access错误的解决方法 1 首先下载 去官网下载phpmyadmin 2 然后直接 ...
- php static 关键字在 函数中的用法
至于在类中声明为 static 的属性和方法,这里不描述php中的变量作用范围的另一个重要特性就是静态变量(static 变量).静态变量仅在局部函数域中存在且只被初始化一次,当程序执行离开此作用域时 ...
- ubuntu 下的 ftp (gftp)
功能和 windows 下的 ftp 一样 gftp安装方法apt-get install gftp启动方法:gfpt