從零開始–系統深入學習android(理論-開發前準備-5.Android 相容-保留)

來源:互聯網
上載者:User

本章內容主要是講關於android大方向上的相容

Android 相容性

 

Android被設計運行於許多不同類型的裝置上。對於我們開發人員,有巨大的潛在使用者(在目前的中國來說,android使用者是最多的):在更多裝置執行App,更多訪問你App的使用者。

幸運的是,android有內建的工具支援,使之更容易維護。你App中manifest檔案的一些小改變都會讓某個使用者在Android Market找不到你的App,並且下載起來很麻煩。本節告訴你

怎麼樣控制裝置訪問你的App。

相容的意思是什嗎?

1個裝置如果它能在android執行環境中正確的執行那麼就說明這個App是相容Android系統的。android執行環境有專門的Android相容性文檔參考(以後會說的),一個最重要的特

征就是能正確的執行.apk檔案。

當然,如果一個指定的裝置缺乏匹配的硬體和功能,那麼一些API就不會正確的工作。但這不是一個問題:android會幫你搞定它,你不用操心。並且還有一些SDK工具可以使用,讓你

更方便的專註於開發。作為一個開發人員,你完全有能力控制你的App,Android提供一流的工具管理你的App。你只要控制你程式的有效性。這些工具會幫你搞定其他問題

我們通過簡單的3個步驟管理App的有效性:

  1. 在manifest 中的<uses-feature>節點聲明你App的需求
  2. 在Android Market 上裝置要求聲明它的功能
  3. Android Market用你App的指定的需求來過濾它.(其實就是manifest設定一些屬性)

這樣,只要App裝上去了就絕對能用(一些極端的例子除外)。只要你準確的描述你APP的需求,你不需要擔心使用者為相容問題責備你

 

技術上過濾某些App

1.在Android Market 上過濾(國內基本上很少會把App傳到Android Market,但瞭解一下總是好的 )

在Android Market上,使用者能看到並下載那些僅僅相容他們裝置的App。Market過濾App的方法之一就是通過feature 來相容,所以Market會在每個app的manifest中檢查

<uses-feature>節點來建立App的feature 需求。Market會根據使用者的裝置可用的feature來比較,然後對每個使用者顯示或者隱藏app。

Android支援許多硬體和軟體的features 。例如指南針,加速感應器,像網路攝影機,動態壁紙等。但不是每一個裝置都支援所有的features

為了方便管理,android定義了feature IDs 。每一個功能有一個匹配的feature  ID並且是Android 已經定義好的。比如指南針的在“android.hardware.sensor.compass”中,

動態壁紙的在“android.software.live_wallpapers”中每一個feature ID都有一個匹配的java 常量。你能在運行時使用PackageManager類查詢這個feature 是否支援你的裝置。

將來的版本中Android 還會添加更多的feature ID。

商業過濾某些App

基於商業或者合法理由你可能需要和限制你app的可用性。例如倫敦地鐵顯示火車時刻表的一個APP,不需要被英國以外的使用者使用。其他的程式可能在某些國家由於商業或合法性目

的不允許被使用。Android Market 能提供開發人員由於商業或合法性的原因來過濾你的App。就是不通過manifest來控制App的訪問。

開發人員能在Market出版UI上(以後會有專門的關於Market的詳細描述)來控制存取權限:

步驟1:列出App能使用的國家

步驟2:選擇能訪問App的使用者群

技術上的相容(比如軟硬體支援)是基於.apk檔案中(manifest)的資訊。非技術上的相容(比如地理限制)是基於Market 上使用者介面的處理

結論

Android的目標就是最大化使用者數量並讓我們開發人員受益(但理想和現實還是有差距的)。

轉載請註明出處:http://www.cnblogs.com/tianjian/category/354587.html

歡迎有疑問的同學或者對於寫作風格和便於閱讀有更好的建議請 加群213821767 參與討論。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.