溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

淺談Manifest文件

發(fā)布時間:2020-07-01 22:52:03 來源:網(wǎng)絡(luò) 閱讀:566 作者:華健123 欄目:移動開發(fā)

相信接觸了android編程的程序員都用過android項目中的manifest.xml文件,manifest的中文解釋為清單,因此這個文件其實就相當于是該應用程序的清單,上面列出了該應用程序的各種信息,今天作為電腦小白的我在經(jīng)過了學習后也來談談自己對于manifest文件的理解,主要分為以下兩點:

先上圖一張:

SYNTAX:
<manifestxmlns:android="http://schemas.android.com/apk/res/android"
package="string"
android:sharedUserId="string"
android:sharedUserLabel="string resource"
android:versionCode="integer"
android:versionName="string"
android:installLocation=["auto" | "internalOnly" | "preferExternal"] >
   . . .
</manifest>


CONTAINED IN:none



MUST CONTAIN:<application>

CAN CONTAIN:

<compatible-screens>

<instrumentation>

<permission>

<permission-group>

<permission-tree>

<supports-gl-texture>

<supports-screens>

<uses-configuration>

<uses-feature>

<uses-permission>

<uses-sdk>


1 manifest文件的作用。


我們注意到上圖中的 CAN CONTAIN包含的內(nèi)容,可以看出manifest文件具有以下作用

a 應用程序具備的權(quán)限

b 應用程序所需的最小API版本

c 定義instrumentation做自動化測試

另外還有

d 定義android的4個組件

e 指定程序的唯一包名(每個程序都由一個唯一的包名標志)


2 android系統(tǒng)如何解析manifest文件。


在android系統(tǒng)啟動的時候,將會有一個系統(tǒng)級的服務 packagemanageservice啟動,它將讀取安裝了的所有的應用程序的信息,并且會在某個系統(tǒng)級的共享的內(nèi)存中建立一個manifest信息庫

之后當應用程序啟動時,launcher會在信息庫中查詢跟要啟動的activity相關(guān)的那個manifest文件。且當四大組件需要被使用時就會去查詢相關(guān)的信息,然后被實例化。


一起學習,有錯誤請指出



向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI