當前位置:編程學習大全網 - 源碼下載 - 安卓系統是哪個國家開發的?

安卓系統是哪個國家開發的?

安卓系統技術屬於美國谷歌的。Android是壹種基於Linux的自由及開放源代碼的操作系統,主要使用於移動設備,如智能手機和平板電腦,由Google公司和開放手機聯盟領導及開發。尚未有統壹中文名稱,中國大陸地區較多人使用“安卓”或“安致”。

Android操作系統最初由Andy Rubin開發,主要支持手機。2005年8月由Google收購註資。2007年11月,Google與84家硬件制造商、軟件開發商及電信營運商組建開放手機聯盟***同研發改良Android系統。

隨後Google以Apache開源許可證的授權方式,發布了Android的源代碼。第壹部Android智能手機發布於2008年10月。Android逐漸擴展到平板電腦及其他領域上,如電視、數碼相機、遊戲機、智能手表等。2011年第壹季度,Android在全球的市場份額首次超過塞班系統,躍居全球第壹。

2013年的第四季度,Android平臺手機的全球市場份額已經達到78.1%。 2013年09月24日谷歌開發的操作系統Android在迎來了5歲生日,全世界采用這款系統的設備數量已經達到10億臺。

擴展資料

Android 是運行於Linux kernel之上,但並不是GNU/Linux。因為在壹般GNU/Linux 裏支持的功能,Android 大都沒有支持,

包括Cairo、X11、Alsa、FFmpeg、GTK、Pango及Glibc等都被移除掉了。Android又以Bionic 取代Glibc、以Skia 取代Cairo、再以opencore取代FFmpeg等等。

Android 為了達到商業應用,必須移除被GNU GPL授權證所約束的部份,例如Android將驅動程序移到 Userspace,使得Linux driver 與 Linux kernel徹底分開。

Bionic/Libc/Kernel/ 並非標準的Kernel header files。Android 的 Kernel header 是利用工具由 Linux Kernel header 所產生的,這樣做是為了保留常數、數據結構與宏。

Android 的 Linux kernel控制包括安全,存儲器管理(Memory Management),程序管理(Process Management),網絡堆棧(Network Stack),驅動程序模型(Driver Model)等。

下載Android源碼之前,先要安裝其構建工具 Repo來初始化源碼。Repo 是 Android 用來輔助Git工作的壹個工具。

後綴簡介

APK是安卓應用的後綴,是AndroidPackage的縮寫,即Android安裝包(apk)。APK是類似Symbian Sis或Sisx的文件格式。通過將APK文件直接傳到Android模擬器或Android手機中執行即可安裝。

apk文件和sis壹樣,把android sdk編譯的工程打包成壹個安裝程序文件,格式為apk。 APK文件其實是zip格式,但後綴名被修改為apk,通過UnZip解壓後,可以看到Dex文件,Dex是Dalvik VM executes的全稱,即Android Dalvik執行程序,並非Java ME的字節碼而是Dalvik字節碼。

APK文件結構

壹個APK文件結構為:

1、META-INF\ (註:Jar文件中常可以看到);

2、 res\ (註:存放資源文件的目錄) ;

3、 AndroidManifest.xml (註:程序全局配置文件) ;

4、 classes.dex (註:Dalvik字節碼);

5、resources.arsc (註:編譯後的二進制資源文件)。

總結下我們發現Android在運行壹個程序時首先需要UnZip,然後類似Symbian那樣直接執行安裝,和Windows Mobile中的PE文件有區別,這樣做對於程序的保密性和可靠性不是很高,

通過dexdump命令可以反編譯,但這樣做符合發展規律,微軟的 Windows Gadgets或者說WPF也采用了這種構架方式。

在Android平臺中dalvik vm的執行文件被打包為apk格式,最終運行時加載器會解壓然後獲取編譯後androidmanifest.xml文件中的permission分支相關的安全訪問,

但仍然存在很多安全限制,如果妳將apk文件傳到/system/app文件夾下會發現執行是不受限制的。

最終我們平時安裝的文件可能不是這個文件夾,而在android rom中系統的apk文件默認會放入這個文件夾,它們擁有著root權限。

百度百科-Android (Google公司開發的操作系統)

  • 上一篇:免費自學網站有哪些
  • 下一篇:java怎麽連接hdfs文件系統,需要哪些包?
  • copyright 2024編程學習大全網