Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android的配置設置

Android的配置設置

編輯:關於Android編程

 

 Android 平台上,可以使用應用程序描述符的android元素將信息添加到 Android 應用程序清單,該清單是 Android 操作系統使用的應用程序屬性文件。創建 APK 包時,ADT 會自動生成 Android Manifest.xml 文件。AIR 會將幾個屬性設置為某些功能運行所需要的值。在 AIR 應用程序描述符的 android 部分設置的任何其他屬性都會添加到 Manifest.xml 文件的相應部分。

注:對於大多數 AIR 應用程序,您必須在android元素內設置應用程序所需的 Android 權限,但通常不需要設置其他任何屬性。

只能設置形式為字符串、整數或布爾值的屬性。不支持對應用程序包中的資源的引用進行設置。

注:運行時需要的最低 SDK 版本應不低於 14。如果想創建僅適用於更高版本的應用程序,應確保 Manifest 包含並指定正確的版本。

保留的 Android 清單設置

AIR 會在生成的 Android 清單文檔中設置多個清單項目,以確保應用程序和運行時功能正確運行。您不能定義以下設置:

manifest 元素

不能設置 manifest 元素的以下屬性:

  • package

  • android:versionCode

  • android:versionName

  • xmlns:android

activity 元素

不能設置主 activity 元素的以下屬性:

  • android:label

  • android:icon

application 元素

不能設置 application 元素的以下屬性:

  • android:theme

  • android:name

  • android:label

  • android:windowSoftInputMode

  • android:configChanges

  • android:screenOrientation

  • android:launchMode

Android 權限

Android 安全模型需要每個應用程序都請求權限,以便使用在安全性或隱私保護方面有作用的功能。打包應用程序時必須指定這些權限,並且不能在運行時進行更改。安裝應用程序時,Android 操作系統會通知用戶應用程序正在請求哪些權限。如果沒有請求某項功能需要的權限,當應用程序訪問該功能時,Android 操作系統可能會引發異常,但並非一定會引發異常。運行時會將異常傳遞給應用程序。在無提示失敗情況下,權限失敗消息會添加到 Android 系統日志。

在 AIR 中,可以在應用程序描述符的android元素內指定 Android 權限。以下格式用於添加權限(其中 PERMISSION_NAME 是 Android 權限的名稱):

 
     
         
                 
             
        ]]> 
     

manifest元素內的 uses-permissions 語句會直接添加到 Android 清單文檔。

以下是使用各種 AIR 功能需要的權限:

ACCESS_COARSE_LOCATION
允許應用程序通過 Geolocation 類訪問 WIFI 和移動電話網絡位置數據。

 

ACCESS_FINE_LOCATION
允許應用程序通過 Geolocation 類訪問 GPS 數據。

 

ACCESS_NETWORK_STATE 和 ACCESS_WIFI_STATE
允許應用程序通過 NetworkInfo 類訪問網絡信息。

 

CAMERA
允許應用程序訪問攝像頭。 注:當您請求使用攝像頭功能的權限時,Android 會假設應用程序也需要攝像頭。如果攝像頭是應用程序的可選功能,應該將uses-feature元素添加到攝像頭清單中,並將需要的屬性設置為false。請參閱Android 兼容性篩選。

 

INTERNET
允許應用程序提出網絡請求。也允許遠程調試。

 

READ_PHONE_STATE
允許 AIR 運行時在打電話期間將音頻調節到靜音。如果您的應用程序在背景中播放音頻,則應設置此權限。

 

RECORD_AUDIO
允許應用程序訪問麥克風。

 

WAKE_LOCK 和 DISABLE_KEYGUARD
允許應用程序使用 SystemIdleMode 類設置阻止設備休眠。

 

WRITE_EXTERNAL_STORAGE
允許應用程序寫入設備上的外部存儲卡。

 

例如,若要為會需要每種權限的應用程序設置該權限,可以將以下內容添加到應用程序描述符:

 
     
         
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
             
        ]]> 
     

Android 自定義 URI 方案

可以使用自定義 URI 方案從網頁或本機 Android 應用程序啟動 AIR 應用程序。自定義 URI 支持依賴於 Android 清單中指定的方法濾鏡,因此在其他平台上不能使用此技術。

若要使用自定義 URI,請將方法濾鏡添加到應用程序描述符的區塊內。必須指定以下示例中的兩個intent-filter元素。編輯語句以反映自定義方案的 URI 字符串。

 
     
         
                 
                     
                         
                             
                             
                         
                         
                             
                             
                             
                             
                         
                     
                 
             
        ]]> 
     

方法濾鏡會通知 Android 操作系統可以使用您的應用程序執行指定操作。對於自定義 URI 而言,這意味著用戶單擊了使用該 URI 方案的鏈接(浏覽器不知道該如何處理)。

通過自定義 URI 調用應用程序時,NativeApplication 對象會調度一個invoke事件。此鏈接的 URL(包括查詢參數)放在 InvokeEvent 對象的arguments數組中。您可以使用任意多個方法濾鏡。

注:StageWebView 實例中的鏈接無法打開使用自定義 URI 方案的 URL。

Android 兼容性篩選

Android 操作系統使用應用程序清單文件中的大量元素來確定應用程序與指定設備是否兼容。可以選擇將此信息添加到清單中。如果不包括這些元素,則可以將您的應用程序安裝在任何 Android 設備上。但是,它可能不會在任何 Android 設備上都正常運行。例如,攝像頭應用程序在沒有攝像頭的電話上將沒有什麼用處。

可以用於過濾的 Android 清單標簽包括:

  • supports-screens

  • uses-configuration

  • uses-feature

  • uses-sdk(在 AIR 3+ 中)

    攝像頭應用程序

    如果為應用程序請求攝像頭權限,Android 會假設應用程序需要所有可用的攝像頭功能,包括自動聚焦和閃光。如果應用程序不需要所有攝像頭功能,或者如果攝像頭是可選功能,則應對攝像頭的各個uses-feature元素進行設置以指示這些功能是可選的。否則,使用缺少某項功能或根本沒有攝像頭的設備的用戶將無法找到 Android Market 上的應用程序。

    以下示例說明了如何為攝像頭請求權限,以及如何將所有攝像頭功能設置為可選:

     
         
             
                     
                     
                     
                     
                 
            ]]> 
         
    

錄音應用程序

如果您請求錄音權限,則 Android 還會假設該應用程序需要麥克風。如果錄音是您的應用程序的一個可選功能,則可以添加 uses-feature 標簽以指定不需要麥克風。否則,使用不帶麥克風設備的用戶在 Android Market 上將找不到您的應用程序。

下面的例子說明了如何請求使用麥克風的權限,同時仍然使麥克風硬件處於可選狀態:

 
     
         
                 
                 
             
        ]]> 
     

安裝位置

通過將 Androidmanifest元素的installLocation屬性設為autopreferExternal,您可以允許將應用程序安裝或移動到外部存儲卡上:

 
     
         
        ]]> 
     

Android 操作系統不保證您的應用程序會安裝到外部內存上。用戶也可以使用系統設置應用程序將應用程序在內部與外部內存之間進行移動。

即使安裝到外部內存,應用程序緩存和用戶數據(如應用程序存儲目錄的內容、共享對象和臨時文件)仍會存儲在內部內存上。若要避免使用太多的內部內存,對於要保存到應用程序存儲目錄的數據應有所選擇。應使用File.userDirectoryFile.documentsDirectory位置(這兩者都會映射到 Android 上 SD 卡的根目錄)將大量數據保存到 SDCard 上。

在 StageWebView 對象中啟用 Flash Player 和其他插件

在 Android 3.0 以上的版本中,應用程序必須在 Android 應用程序元素中啟用硬件加速,才能在 StageWebView 對象中顯示插件內容。要啟用插件渲染,可將application元素的android:hardwareAccelerated屬性設置為true

 
     
         
                 
             
        ]]> 
     

顏色深度

在 AIR 3 和更高版本中,運行時將顯示設置為呈現 32 位顏色。在早期版本的 AIR 中,運行時使用 16 位顏色。您可通過使用應用程序描述符中的 元素,指示運行時使用 16 位顏色:

 
    16bit 
    ... 

使用 16 位顏色深度可提高渲染性能,但是會犧牲顏色保真度。


  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved