温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

学习Android之-----------------------AndroidManifest.xml

发布时间:2020-07-16 13:41:19 来源:网络 阅读:793 作者:Code小伟 栏目:移动开发


学习Android之-----------------------AndroidManifest.xml


    在Android中,有一个文件叫AndroidManifest.xml ,该文件是Android项目开发的全局配置文件,


以.xml结尾。熟悉java web开发的朋友可能都知道,在Web工程中,也有一个全局的配置文件,叫web.xml。


当然AndroidManifest.xml 与 web.xml 是类似的,我们都可以在文件中配置有关项目的相关配置(如初始


化变量设置,Android Activity配置,servlet配置等等)。


    总的来说,开发Android应用所有需要配置的都需要在 AndroidManifest.xml 文件中进行配置,常见的


有:应用程序包名、版本号、组件、权限信息等。



一、AndroidManifest.xml 文件结构


举个例子:


//指明xml文件的版本以及字符编码
<?xml version="1.0" encoding="utf-8"?>

//AndroidManifest.xml 文件以标签<manifest></manifest>为根节点
<manifest 
    //指明Android的相关命名空间,一般都是http://schemas.android.com/apk/res/android,这样使    //得Android中各种标准属性能在文件中使用,提供了大部分元素中的数据
    xmlns:android="
    //定义java主应用程序的包名 ,它也是一个应用进程的默认名称
    package="com.example.administrator.myapplication">
    //权限设置,允许用户读取和写入联系人信息
    <uses-permission android:name="android.permission.READ_CONTACTS" />
    <uses-permission android:name="android.permission.WRITE_CONTACTS" />

//一个AndroidManifest.xml中必须含有一个Application标签,这个标签声明了每一个应用程序的组件//及其属性(如icon,label,permission等)
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        //Android Activity的定义
        <activity android:name=".ContactProvider">
        //过滤器的定义,类似于java web中的filter
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>

</manifest>


二、AndroidManifest.xml 在Android Studio 中的位置


学习Android之-----------------------AndroidManifest.xml



三、AndroidManifest.xml 常用标签解读



1、分类


        全局标签(包名及版本信息)、组件标签(四大组件)、权限标签(申请及定义权限)


2、全局标签


package="com.example.administrator.myapplication" //定义项目主函数包名,类似于java应用程序main方法
android:revisionCode="1"   //定义该Android应用的版本号
android:versionName="@string/hello" //定义该Android应用的版本名称

以上三个属性位于根标签<manifest >中以属性的形式给出。

学习Android之-----------------------AndroidManifest.xml

<uses-sdk
    android:minSdkVersion="19"    //定义最低的API版本
    android:targetSdkVersion="23"  //定义目标API版本
    >


3、组件标签


    组件标签有<application></application>打标签包裹着,一个 AndroidManifest.xml 只能包含一个


<application>组件节点,在里边我们可以配置相关的组件信息,如 Android 四大组件(Activity、


Service、ContentProvider、Broadcast Receiver)


如:在<application>中设置属性值:


图标:android:icon

标题: android:label

主题样式:android:theme



    1、activity 组件由 <activity></activity>标签包裹着,并且我们可以指定android:name属性指定


activity的类名,且name的值最好是填写类的全限定类名,即 "包名.类名"的形式。


    且启动任何一个没有在 AndroidManifest.xml 文件中定义的 Activity 都会相应的报出异常。


    <intent-filter></intent-filter> 相当于该Activity 的一张名片,在现实生活中,我们可能不认识


一种事物或者某个人,但我们可以根据该种事物的相关特征、某人的相关事迹来确定一个人,即<intent-


filter>相当于Activity的过滤器,定义了该Activity的一些特征,以便别的Activity找到它


    2、service

    3、provider  需要设置name属性和authorities属性

也是同样的做法!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI