Android開發學習總結——Android開發的一些相關概念

1、什麼是3G、4G

  1995年問世的第一代模擬製式手機(1G)只能進行語音通話。
  1996到1997年出現的第二代GSM、CDMA等數字制式手機(2G)便增長了接收數據的功能

Ÿ  3G指的是第三代移動通訊技術(3rd - Generation),速率通常在幾百Kbps,較以前的2G和2.5G在數據傳輸速度上有很大提高。3G與2G的主要區別是在傳輸聲音和數據的速度上的提高編程

  4G指的是第四代移動通訊技術(4th - Generation),速度可達到100Mbps以上,幾乎能夠知足人們的全部傳輸數據的需求。瀏覽器

  目前主流的3G技術標準有三種:安全

  • WCDMA:全球80%以上的3G網絡都是採用此種制式。中國聯通運營。186
  • CDMA2000:目前日韓及北美使用較多。中國電信運營。 189
  • TD-SCDMA:中國自主知識產權的3G通訊技術。中國移動運營。 188

  目前主流的4G技術爲LTE,但尚未被普遍應用。服務器

  通訊技術的發展歷程:GSM→GPRS→EDGE→WCDMA→HSDPA→HSDPA+→ LTE網絡

2、Andorid的相關概念

2.一、什麼是Android

  

Ÿ   Android本義指「機器人」,Google於2007年11月5日宣佈的基於Linux平臺的開源手機操做系統的名稱,官方中文名:安卓 。架構

Ÿ   Android系統早期由原名爲"Android"的公司開發,谷歌在2005年收購"Android.Inc"後,繼續對Android系統開發運營。框架

Ÿ   底層Linux內核只提供基本功能,其餘的應用軟件則由各公司自行開發,大部分程序以Java語言編寫。編程語言

Ÿ   因爲Android系統的開源特性,不少製造商都在生產Android系統的設備,如:摩托羅拉、HTC、三星、索愛、LG、小米、華爲、魅族等。函數

Ÿ   Android系統除了運行在智能手機上以外,還能夠用作平板電腦、電視、汽車等不少設備上。工具

2.二、Android平臺架構

  Android系統的底層創建在Linux系統之上,該平臺由操做系統、中間件、用戶界面和應用軟件4層組成,它採用一種被稱爲軟件疊層(Software Stack)的方式進行構建。這種軟件疊層結構使得層與層之間相互分離,明確各層的分工。這種分工保證了層與層之間的低耦合,當下層的層內或層下發生改變時,上層應用程序無須任何改變。

  Android平臺的架構圖以下:

  

  從圖中能夠看出,Android系統是由五大部分組成的。

  一、應用程序層(APPLICATIONS)

    Android系統將會包含系列的核心應用程序,包括電子郵件客戶端,SMS程序、日曆、地圖、瀏覽器、聯繫人等。這些應用程序都是用Java編寫的。

  二、應用程序框架(APPLICATION FRAMEWORK)

    當咱們開發Android應用程序時,就是面向底層的應用框架進行的。從這個意義上來看,Android系統上的應用程序時徹底平等的,不論是Android系統提供的程序, 仍是普通開發者提供的程序,均可以訪問Android提供的API框架。

  三、函數庫(LIBRARIES)

    Android包含一套被不一樣組件所使用的C/C++庫的集合。通常來講,Android應用開發者不能直接調用這套C/C++庫集,但能夠經過它上面的應用程序框架來調用這些庫。

  四、Android運行時(ANDROID RUNTIME)

     Android運行時由兩部分組成:Android核心庫集合(Core Libraries)和Dalvik虛擬機(Dalvik Virtual Machine)。其中核心庫集提供了Java語言核心庫所能使用的絕大部分功能,而虛擬機則負責運行Android應用程序。 每一個Android應用程序都運行在單獨的Dalvik虛擬機內(即每一個Android應用程序對應一條Davlik進程),Dalvik專門針對同時高效運行多個虛擬機進行優化, 所以Android系統很方便實現對應用程序進行隔離。

     因爲Android應用程序的編程語言是Java,所以有些人會把Dalvik虛擬機和JVM搞混,當實際上兩者存在區別:Dalvik並未徹底遵照JVM規範,二者也不兼容。 實際上,JVM虛擬機運行的是Java字節碼(一般就是.class文件),但Dalvik運行的是其專有的dex(Dalvik Executable)文件。JVM直接從.class文件或JAR包中 加載字節碼而後運行;而Dalvik則沒法直接從.class文件或JAR包中加載字節碼,它須要經過DX工具將應用程序的全部.class文件編譯成.dex文件, Dalvik則運行該.dex文件。

    Dakvik虛擬機很是適合在移動終端上使用,相對於在PC或服務器上運行的虛擬機而言,Dalvik虛擬機不須要很快的CPU計算速度和大量的內存空間,它主要有以下兩個特色:

    1. 運行專有的.dex文件。專有的.dex文件減小了.class文件中的冗餘信息,並且會把全部.class文件整合到一個文件中,從而提升運行性能; 並且DX工具還會對.dex文件進行一些性能的優化。
    2. 基於寄存器實現。大多數虛擬機(包括JVM)都是基於棧的,而Dalvik虛擬機則是基於寄存器的。通常來講,基於寄存器的虛擬機具備更好的性能表現,但在硬件通用性上略差。

  五、Linux內核

    Android系統創建在Linux 2.6之上。Linux內核提供了安全性、內存管理、進程管理、網絡協議棧和驅動模型等核心系統服務。除此以外,Linux內核也是系統硬件和軟件疊層之間的抽象層。

2.三、Android進化史

  

2.四、各類Android設備

  

  一張Android和Apple互相PK的圖片,挺有趣的。
  
  掌握了移動互聯網就掌握了未來,誰輸在了移動互聯網上,誰就輸了將來,誰抓住了移動互聯網的機會,誰就有了將來成功的門票。
相關文章
相關標籤/搜索