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的系统权限有很多,不用全部记忆,只需要会像查字典一样,学会查询和使用就可以了

最新文章

  1. MySQL的SSL加密连接与性能开销
  2. ASP.NET Core – 2300% More Requests Served Per Second
  3. sass兼容IE8透明度方法
  4. LCD1602写自定义字符的Verilog源码
  5. webkit内核分析之 Frame
  6. 访问修饰符protected
  7. SQL server 性能调优
  8. Map集合中value()方法与keySet()、entrySet()区别
  9. iOS教你轻松打造瀑布流Layout
  10. 极光的开源礼物「Aurora IMUI」
  11. 通过ALM OTA API获取test case的信息,并上传测试结果到test set中
  12. 1.5 sleep()方法
  13. [lua][openresty]代码覆盖率检测的解决方式
  14. &lt;Android基础&gt;(二) Activity Part 2
  15. CMake系列之二:入门案例-单个源文件
  16. Windows环境selenium+Python环境配置
  17. 关于js中函数的调用问题
  18. CSS—— em的详解
  19. linux 短信收发
  20. Linux chmod命令

热门文章

  1. mysql的OFFSET实现分页
  2. 三级级联查询省份名称和编码(保证名称不反复)的SQL语句
  3. 常见Java工具——jps
  4. exit和wait一起可以彻底清除子进程的资源
  5. pthread_cond_wait()函数的详解
  6. Mac安装wget
  7. linux定时任务crontab设置
  8. Node.js获取mac网卡地址
  9. fprintf宏
  10. python print 不换行