android菜鳥學習筆記3----關於AndroidMainfest.xml

來源:互聯網
上載者:User

標籤:

每個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子節點:用於指定應用程式需要的共用庫

android菜鳥學習筆記3----關於AndroidMainfest.xml

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.