[轉載請註明出處] http://kezeodsnx.pixnet.net/blog

作者: kezeodsnx

架構

Android使用的是Java,因此需要一個Java platform,意思是需要有能力執行Java的bytecode。而Java platform的架構為:

。Java bytecode

。JVM (Java Virtual Machine)

。OS

JVM是用來執行bytecode,因此使用者開發的程式,最後需轉為bytecode。而開發會需要的library,在Java中叫Jave Runtime Library。JVM加 Jave Runtime Library 就是JRE (Java Runtime Environment),因其完整的提供了執行Java的環境。

換句話說

Java是不變的,該怎麼寫就怎麼寫。Java bytecode被換成了Dalvik executable (dex),JVM則變為Dalvik。而Java Runtime Library包括了Java的標準函式庫 (當然也轉成了dex)。另外就其手機平台的特性,也提供了像GPS,telcom等的相關元件。相同的,Android library加Dalvik也有所謂的Android runtime。

重點是,bytecode與dex並不共通!

SDK

2009年5月,Google release了Android 1.5 SDK。

SDK主要是用來設計應用程式,而SDK則包含了設計所需要的工具程式,包括library。這次的1.5將API level提升至3,並把1.1版裡的Maps library拿到 (過去的build system才需要)。因此,1.5將沒有任何的external library。

API level是用來在安裝前決定一個應用程式是否與系統相容。這個level將記錄在menifast檔裡,意思是系統所需最低的API level,設定為android:minSdkVersion屬性。因此,要大於或等於這個level才可安裝。有新版,就要做相容性,多測就對啦!

System Image

1.5所含的system image包括以下內建的應用程式:

  • Alarm Clock
  • Browser
  • Calculator
  • Camcorder
  • Camera
  • Contacts
  • Custom Locale (developer app)
  • Dev Tools (developer app)
  • Dialer
  • Email
  • Gallery
  • Messaging
  • Music
  • Settings
  • Spare Parts (developer app)

 

內建的Locale:

  • Chinese, PRC (zh_CN)
  • Chinese, Taiwan (zh_TW)
  • Czech (cs_CZ)
  • Dutch, Netherlands (nl_NL)
  • Dutch, Belgium (nl_BE)
  • English, US (en_US)
  • English, Britain (en_GB)
  • English, Canada(en_CA)
  • English, Australia (en_AU)
  • English, New Zealand (en_NZ)
  • English, Singapore(en_SG)
  • French, France (fr_FR)
  • French, Belgium (fr_BE)
  • French, Canada (fr_CA)
  • French, Switzerland (fr_CH)
  • German, Germany (de_DE)
  • German, Austria(de_AT)
  • German, Switzerland (de_CH)
  • German, Liechtenstein (de_LI)
  • Italian, Italy (it_IT)
  • Italian, Switzerland (it_CH)
  • Japanese (ja_JP)
  • Korean (ko_KR)
  • Polish (pl_PL)
  • Russian (ru_RU)
  • Spanish (es_ES)

 

to be Continued.....如果project沒被砍的話....

 

 

kezeodsnx 發表在 痞客邦 PIXNET 留言(0) 人氣()