Android AndroidManifest.xml配置文件
AndroidManifest.xml配置文件介绍
本质:AndroidManifest.xml是整个应用的主配置清单文件。
包含:该应用的包名、版本号、组件、权限等信息。
作用:记录该应用的相关配置信息。
AndroidManifest.xml的位置

从新建一个Android工程开始,AndroidManifest.xml就已经出现了
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.i.helloworld"
android:versionCode="1"
android:versionName="1.0" > <uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="19" /> <application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.i.helloworld.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>
</application> </manifest>
AndroidManifest.xml
AndroidManifest.xml常用标签解读
(1)全局篇(包名、版本信息)
(2)组件篇(四大组件)
(3)权限篇(申请权限和定义权限)
全局篇
(1)应用的包名以及版本信息的管理
package="com.i.helloworld"
android:versionCode="1"
android:versionName="1.0"
(2)控制android版本信息(可以支持的最低版本、你期望的系统版本)
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="19" />
组件篇 -- 在配置文件中注册组件
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
[ ... application nodes ... ]
</application>
其属性可以设置:
图标:android:icon
标题:android:label
主题样式:android:theme
只能包含一个application节点
Activity(活动)
<activity
android:name="com.i.helloworld.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>
android:name="com.i.helloworld.MainActivity" 通过这句话在清单中定义一个activity
启动一个没有在清单中顶一个activity都会抛出异常
<intent-filter>起的名片或者过滤器的作用
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
这里这个intent-filter接货了主函数启动的时候和第一次登陆的作用
Service(服务)
<service ...>
activity可以用来显示界面;Service只是走位一个后台逻辑的处理。
Content Provider(内容提供者)
<provider ...>
内容提供者用来管理数据库访问以及程序内和程序间共享。
Broadcast Receiver(广播接收者)
<receiver ...>
相当于一个全局事件的监听器,一旦我们在配置文件中注册以后,它就相当于一个面向全局的监听器。一旦它所匹配的intent被传播出来,它就会立即被执行。
权限篇
设置权限方式:
在AndroidManifest.xml的下方选择permissions标签-->add。。。
(1)使用系统权限
<uses-permission>申请权限
声明了哪些是由你定义的权限,而这些权限是应用程序正常执行所必需的。在安装程序的时候,你设定的所有权限将会告诉给用户,由他们来决定同意与否。对很多本地Android服务来说,权限都是必需的,特别是那些需要付费或者有安全问题的服务(例如,拨号、接受SMS或者使用基于位置的服务)
(2)自定义权限
除了系统权限,我们也可以使用自定义权限
使用权限:
<activity
android:permission="xxx"
...
前提是要先在<uses-permission>中先申请权限
总结
注意事项
1.每个组件都必须包含android:name这个属性,推荐用券名称(包名.类名),intent-filter(过滤器)可以选写。
2.四大组件中除了BroadcastReceiver可以使用代码声明注册以外,其他组件必须要在Manifest文件中进行声明配置,否则会报错
3.可以使用alt+/的组合快捷键,通过代码提示加快书写效率
4.android的系统权限有很多,不用全部记忆,只需要会像查字典一样,学会查询和使用就可以了
Android AndroidManifest.xml配置文件的更多相关文章
- AndroidManifest.xml配置文件详解
AndroidManifest.xml配置文件对于Android应用开发来说是非常重要的基础知识,本文旨在总结该配置文件中重点的用法,以便日后查阅.下面是一个标准的AndroidManifest.xm ...
- AndroidManifest.xml配置文件详解 (转)
原文:http://blog.csdn.net/shagoo/article/details/7485958# AndroidManifest.xml配置文件对于Android应用开发来说是非常重要的 ...
- AndroidManifest.xml配置文件详解(转载)
AndroidManifest.xml配置文件详解 2013-01-05 10:25:23 分类: Android平台 AndroidManifest.xml配置文件对于Android应用开发来说是 ...
- AndroidManifest.xml配置文件详解(转)
转载博客:http://blog.csdn.net/shagoo/article/details/7485958# AndroidManifest.xml配置文件对于Android应用开发来说是非常重 ...
- AndroidManifest.xml配置文件
AndroidManifest.xml启动文件 主activity: <activity android:name="com.example.android01.MainActivit ...
- [android] AndroidManifest.xml -【manifest】
<manifest> 原文链接:http://www.android-doc.com/guide/topics/manifest/manifest-element.html 最早引入的AP ...
- android AndroidManifest.xml 属性详细解析
一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activiti ...
- Android AndroidManifest.xml详解
AndroidManifest.xml简述: AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activitie ...
- [android] AndroidManifest.xml 详解
第1部分 标签库+包路径+版本控制 <manifest xmlns:android="http://schemas.android.com/apk/res/android" ...
随机推荐
- xcode常见报错调试
转载来自于:http://www.cnblogs.com/g-ios/p/4625912.html(广_ios博客园) BMKGeoCodeSearch 反向地理编码一直失败 Location 申请的 ...
- Java 日期处理类库Joda-Time简介
http://www.ibm.com/developerworks/cn/java/j-jodatime.html 登录 (或注册) 中文 IBM 技术主题 软件下载 社区 技术讲座 搜索 devel ...
- spingboot集成jpa(二)
一.使用单元测试 单元测试在每个项目环境中必不可少,springboot中如何使用单元测试 在src/test/java中新建测试类DemoApplicationTest.java 项目结构: De ...
- apt-get install 的替换命令及mysql安装问题的解决
Some packages could not be installed. This may mean that you haverequested an impossible situation o ...
- 刘昕明:送给和我一样曾经浮躁过的PHP程序员
作者注:2012年偶决定开始写博客了,不为别的,就希望可以通过博客记录我的成长历程同时也希望可以帮助一些刚毕业,刚入行业的兄弟姐们们.我们是一群充满浮躁.抱怨.迷茫的程序猿,想一想3年就这么过去了,社 ...
- Comet——随着AJAX技术兴起而产生的新技术
不得不说Ajax确实是一个好东西,由它的出现使得WEB端新技术不断产生,Comet就属于这么一个技术,这个技术有时叫做反向AJAX,有时叫做服务器"推"技术,嗯,不要被牛逼闪闪的名 ...
- redis live 如何安装
在 windows 环境下安装 redislive 这是一篇在 windows 环境下安装 redislive 的教程! 项目地址:https://github.com/nkrode/RedisL ...
- node.js执行shell命令
nodejs功能强大且多样,不只是可以实现 服务器端 与 客户端 的实时通讯,另一个功能是用来执行shell命令 首先,引入子进程模块 var process = require('child_pro ...
- Huffman树
结点定义: /* * Huffman树结点定义 */ struct Node { ElementType weight; // 结点的权值 struct Node *leftChild; // 结点的 ...
- 高速入门:十分钟学会Python
初试牛刀 如果你希望学习Python这门语言.却苦于找不到一个简短而全面的新手教程.那么本教程将花费十分钟的时间带你走入Python的大门.本文的内容介于教程(Toturial)和速查手冊(Cheat ...