AndroidMainfest.xml文件详解

来源:互联网 发布:数据分析培训机构人大 编辑:程序博客网 时间:2024/05/22 13:01

转载:http://www.bkjia.com/Androidjc/1022569.html

每个android项目都包含一个AndroidMainfest.xml文件,它包含了组成应用程序的每一个Acitivity、Service、Content Provider和Broadcast Receiver的节点,并使用Intent Filter 和权限来确定这些组件之间以及这些组件和其他应用程序是如何交互的。

1.根节点manifest:

package属性:当前应用的包名

versionCode属性:将当前应用程序的版本定义为一个整数,每次版本迭代时,该数字都会增加

versionName属性:定义一个显示给用户的公共版本号

installLocation属性:指定是否允许(或者首选)将应用程序安装到外部存储器(通常为SD卡)。其值可以为:preferExternal或auto,使用前者,只要有可能就会把应用程序安装在外部存储器上,后者则由系统决定。若不指定installLocation属性,则将当前应用安装到内部存储器,而不能将其移动到外部存储器。

如:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

    package="cn.csc.mydemo"

    android:versionCode="1"

android:versionName="1.0 Beta"

android:installLocation=”preferExternal”>

</manifest>

2.manifest的常见子节点:

1)uses-sdk:

如:<uses-sdk

        android:minSdkVersion="10"

        android:targetSdkVersion="14" />

minSdkVersion属性:指定应用要求的最低SDK版本,未指定,则默认为1

maxSdkVersion属性:最高SDK版本,一般最好不要指定,除非知道应用在更新版本的平台上肯定不能正确运行。

targetSdkVersion属性:用于指定开发和测试中所使用的平台版本。即使应用程序没有使用任何新的API,也应当将目标SDK设为最新的平台版本,这被认为是一种最佳实践。

2)uses-permission:

配置应用程序所需要的权限,在安装应用程序时,设定的所有权限将会告诉给用户,由他们来决定是否同意安装使用。

如:<uses-permission android:name="android.permission.INTERNET"/>需要网络权限

3)instrumentation:

单元测试时,用到

如:<instrumentation

        android:name="android.test.InstrumentationTestRunner"

        android:targetPackage="cn.csc.demo" />指定要测试的包名

4)application:

一个mainfest文件只能有一个application节点,它的属性和子节点都比较常用

3.application节点:

如:<application

        android:icon="@drawable/ic_launcher"

        android:label="@string/app_name" >

icon属性:指定当前应用程序的图标

label属性:指定当前应用程序的标题

1)activity子节点:

<activity

            android:name=".MainActivity"

            android:label="@string/app_name" >

            <intent-filter>

                <action android:name="android.intent.action.MAIN" />

 

                <category android:name="android.intent.category.LAUNCHER" />

            </intent-filter>

 </activity>

应用程序中用到的每一个Activity都要求有一个Activity子节点,启动一个没有在Manifest中定义的Activity时都会抛出一个运行时异常。每个Activity节点都允许使用intent-filter子节点来定义用于启动该Activity的Intent。

name属性:指定Activity类的名字

2)service子节点:应用程序使用的service

3)provider子节点:应用程序使用的Content Provider

4)receiver子节点:引用程序使用的Broadcast Receiver

5)uses-library子节点:用于指定应用程序需要的共享库


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 拼多多强行退款怎么办 苹果软件购买退怎么办 申请退款关闭了怎么办? 微信付款退货怎么办 送外卖顾客拒收怎么办 京东不同意退款怎么办 京东取消失败怎么办 手机无网络信号怎么办 装修公司不肯退款怎么办 买鼻炎果被骗怎么办 办卡后商家跑了怎么办 自离离职证明怎么办 员工不尊重老板怎么办 雄迈用户锁定怎么办 被告人无法支付欠款怎么办 编完码以后html要怎么办 在宿舍休息不好怎么办 发现员工拿回扣怎么办 qq账号忘记了怎么办 如果忘记qq账号怎么办 美发店从网上进货怎么办 爱库存一个月没卖一万怎么办 小米小店加价怎么办 开餐饮配送公司怎么办 美团退款失败怎么办 皇帝吃不完的菜怎么办 钱包到家逾期会怎么办 餐厅订不到包间怎么办 医保卡信息错误怎么办 人人贷债权到期怎么办 做优惠券不赚钱怎么办 遥控器不管用了怎么办 空调遥控不管用怎么办 ios下东西失败怎么办 农产品自产自销怎么办免税证明 怀孕吃了螃蟹怎么办 怀孕吃甲鱼了怎么办 怀孕吃龙虾了怎么办 除湿机显示h1是怎么办 发喜糖没盒子怎么办 身份证被网贷的群发怎么办