當前位置:首頁 » 安卓系統 » cmandroidl

cmandroidl

發布時間: 2023-08-21 21:18:19

① 在android4.0.幾的版本上會出現這個問題,在線求解答

鎮凳在Ubuntu12.04(64位)編譯Android4.0源碼時,遇到各種各樣的問題。不是缺這個,就是少那個。現把這些問題和解決方法羅列出來(最新統計)。

錯誤(1):
/usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory
make: *** [out/host/linux-x86/obj/EXECUTABLES/acp_intermediates/acp.o] 錯誤 1

解決:
sudo apt-get install libc6-dev-i386

錯誤(2):
make: *** [out/host/linux-x86/obj/EXECUTABLES/acp_intermediates/acp] error 1

解決:
sudo apt-get install g++-4.4-multilib

錯誤(3):
external/clearsilver/cgi/cgi.c:22: fatal error: zlib.h: No such file or directory
compilation terminated.
make: *** [out/host/linux-x86/obj/SHARED_LIBRARIES/libneo_cgi_intermediates/cgi.o] Error 1

解決:
sudo apt-get install zlib1g-dev

錯誤(4):
/usr/bin/ld: cannot find -lz
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/aapt] Error 1

解決:
sudo apt-get install lib32z1-dev

錯誤(5):
bison -d -o out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cpp frameworks/base/tools/aidl/aidl_language_y.y
/bin/bash: bison: command not found
make: *** [out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cpp] Error 127

解決:
sudo apt-get install bison

錯誤(6):
Lex: aidl <= frameworks/base/tools/aidl/aidl_language_l.l
/bin/bash: flex: command not found
make: *** [out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_l.cpp] Error 127

拿歲解決:
消旅睜sudo apt-get install flex

錯誤(7):
/usr/bin/ld: cannot find -lncurses
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/EXECUTABLES/adb_intermediates/adb] Error 1

解決:
sudo apt-get install lib32ncurses5-dev

錯誤(8):
prebuilt/linux-x86/sdl/include/SDL/SDL_syswm.h:55: fatal error: X11/Xlib.h: No such file or directory
compilation terminated.
make: *** [out/host/linux-x86/obj/EXECUTABLES/emulator_intermediates/android/main-common.o] Error 1

解決:
sudo apt-get install libx11-dev

錯誤(9):
sh: gperf: not found
calling gperf failed: 32512 at ./makeprop.pl line 96.
make: *** [out/target/proct/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/css/CSSPropertyNames.h] Error 25
make: *** Deleting file `out/target/proct/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/css/CSSPropertyNames.h'

解決:
sudo apt-get install gperf

錯誤(10):
build/core/java.mk:9: *** bin: Target java mole does not define any source or resource files. Stop.

解決:
刪除源碼根目錄下的bin文件夾,這個文件夾是導入eclipse時創建的。

錯誤(11):
/usr/bin/ld: cannot find -lX11
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/lib/libOpenglRender.so] 錯誤 1

解決/usr/bin/ld: Cannot Find -lxxx錯誤
/usr/bin/ld: cannot find -lltdl
collect2: ld returned 1 exit status

解決辦法是(方法一):

[root@9-104 php-5.2.8]# updatedb
[root@9-104 php-5.2.8]# locate libltdl //提示/usr/bin/ld: cannot find -lxxx ,查找時候前面加lib:libxxx 住一 第一個l去掉
/usr/lib64/libltdl.so.3
/usr/lib64/libltdl.so.3.1.4
/usr/share/libtool/libltdl
/usr/share/libtool/libltdl/COPYING.LIB
/usr/share/libtool/libltdl/Makefile.am
/usr/share/libtool/libltdl/Makefile.in
/usr/share/libtool/libltdl/README
/usr/share/libtool/libltdl/acinclude.m4
/usr/share/libtool/libltdl/aclocal.m4
/usr/share/libtool/libltdl/config-h.in
/usr/share/libtool/libltdl/config.guess
...
注意拉:
[root@9-104 php-5.2.8]# ln -s /usr/lib64/libltdl.so.3 /usr/lib64/libltdl.so
原理:給查找到的libxxx文件做軟鏈接
ln -s /usr/lib64/libxxx.so.X(X代表數字) /usr/lib64/lxxx.so

解決辦法是(方法二):
apt-get install libxx-dev(如:apt-get install libltdl-dev)
/usr/bin/ld: cannot find -lXt 這種情況一般就是庫找不到,有可能你沒安裝,有可能你安裝了但是路徑不對。你可以先用 #locate libxt查看下,時候跟這有光的庫,沒有就安裝。

以上兩種辦法若再出現如下錯誤:

<built-in>:0:0: note: this is the location of the previous definition
host StaticLib: libOpenglCodecCommon (out/host/linux-x86/obj/STATIC_LIBRARIES/li
bOpenglCodecCommon_intermediates/libOpenglCodecCommon.a)
host SharedLib: libOpenglRender (out/host/linux-x86/obj/lib/libOpenglRender.so)
/usr/bin/ld: cannot find -lX11
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/lib/libOpenglRender.so] Error 1

解決方法(辦法三親測一定可行):$ sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so

錯誤(12):
development/tools/emulator/opengl/host/libs/Translator/GLcommon/GLDispatch.cpp:22: fatal error: GL/glx.h: No such file or directory compilation terminated.
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libGLcommon_intermediates/GLDispatch.o] Error 1

解決方法:sudo apt-get install libgl1-mesa-dev

錯誤(13):
host SharedLib: lib64EGL_translator (out/host/linux-x86/obj/lib/lib64EGL_translator.so)
/usr/bin/ld: cannot find -lGL
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/lib/lib64EGL_translator.so] Error 1
make: *** Waiting for unfinished jobs....

解決方法 :

sudo apt-get install libglu1-mesa-dev

錯誤(14):
host StaticLib: libGLcommon (out/host/linux-x86/obj/STATIC_LIBRARIES/libGLcommon
_intermediates/libGLcommon.a)
host SharedLib: libGLES_CM_translator (out/host/linux-x86/obj/lib/libGLES_CM_tra
nslator.so)
/usr/bin/ld: cannot find -lGL
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/lib/libGLES_CM_translator.so] Error 1

由於libGL.so系統默認沒有進行庫路徑下的鏈接,還需要手動鏈接一下
解決方法: sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
解決方法: sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/mesa/libGL.so

在網上搜到上面的解決方法,可是按照上述方法做了,問題依舊。經過多方實驗,才發現問題所在。通過apt-get install的庫不是libGL.so.1.2了。而是libGL.so.1.2.0.

錯誤(15):
make: *** [out/host/linux-x86/obj/EXECUTABLES/obbtool_intermediates/Main.o] Error 1

後來發現了,原來是Ubuntu11.10里的gcc和g++版本太高了,於是執行下面的操作:

sudo apt-get install gcc-4.4

sudo apt-get install g++-4.4

sudo rm -rf /usr/bin/gcc /usr/bin/g++

sudo ln -s /usr/bin/gcc-4.4 /usr/bin/gcc

sudo ln -s /usr/bin/g++-4.4 /usr/bin/g++

把默認的4.6版本換為了4.4,繼續編譯源碼,又出現了另一個錯誤,大致提示為:

g++ selected multilib '32' not installed

繼續奮戰吧,安裝相應的工具吧:sudo apt-get install g++-4.4-multilib,現在正在make -j8(開啟多線程編譯(不推薦),可能有時候會出現問題,最好是直接make)

2.解決各種依賴問題
首先安裝一些庫
?View Code BASH

1 sudo apt-get install gnupg flex bison gperf libsdl1.2-dev libesd0-dev
2 sudo apt-get install libwxgtk2.6-dev squashfs-tools build-essential
3 sudo apt-get install zlib1g-dev pngcrush schedtool ia32-libs libncurses5-dev

這些庫可能不全,如果出現問題,再google一下吧

2.error: 「_FORTIFY_SOURCE」 redefined [-Werror]
這個問題,據說與gcc版本有關,4.4版不會出現。
後來在google code 上找到了使用gcc 4.6編譯的方法
修改build/core/combo/HOST_linux-x86.mk 文件 line 61

?View Code BASH

1 -HOST_GLOBAL_CFLAGS += -D_FORTIFY_SOURCE=0
2 +HOST_GLOBAL_CFLAGS += -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0

這是CyanogenMod打上的補丁

3.No rule to make target 『out/target/proct/generic/obj/lib/libcamera.so』
修改 /home/Android-2.3.4/frameworks/base/services/camera/libcameraservice/Android.mk,USE_CAMERA_STUB:=false ->ture
?View Code BASH

1 LOCAL_PATH:= $(call my-dir)
2
3 # Set USE_CAMERA_STUB if you don't want to use the hardware camera.
4
5 # force these builds to use camera stub only
6 ifneq ($(filter sooner generic sim,$(TARGET_DEVICE)),)
7 USE_CAMERA_STUB:=true
8 endif
9
10 #########CHANGE THIS LINE############
11 USE_CAMERA_STUB:=true
12
13 ifeq ($(USE_CAMERA_STUB),)
14 USE_CAMERA_STUB:=false
15 endif

② android opengles2.0值得學習嗎

OpenGLES是一個讓人崩潰的東西。在Andorid手機上做3D還就得用它。把我記的一些筆記分享在這里吧:

Android OpenGL ES簡介 20011-6-3
Android系統使用OpenGL的標准介面來支持3D圖形功能,android 3D圖形系統也分為java框架和本地代碼兩部分。
本地代碼主要實現的OpenGL介面的庫,在Java框架層,javax.microedition.khronos.opengles是java標準的OpenGL包,
android.opengl包提供了OpenGL系統和Android GUI系統之間的聯系。
Android的本地代碼位於frameworks/base/opengl下,
JNI代碼位於frameworks/base/core/com_google_android_gles_jni_GLImpl.cpp和frameworks/base/core/com_google_android_gles_jni_EGLImpl.cpp,
java類位於opengl/java/javax/microedition/khronos下
本地測試代碼位於frameworks/base/opengl/tests。包括angeles、fillrate等14個測試代碼,這些代碼都可以通過終端進行本地調用測試(模擬器中使用adb shell)。
OpenGL ES 1.x
固定管線操作,支持glVertexPointer()等函數,不支持GLSL。頭文件在ndk的GLES目錄下,庫文件是libGLESv1_CM.so。
OpenGL ES 2.x
編程管線操作,不兼容1.x,不支持固定管線操作,例如glVertexPointer()等函數。支持GLSL(還必須用這個來編程)。頭文件在ndk的GLES2目錄下,庫文件是libGLESv2.so。

OpenGL ES學習 2011-6-30
OpenGL定義了自己的數據類型。應該堅持使用這些OpenGL的數據類型,從而保證可移植性和效率。
OpenGL ES 目前不支持64位數據類型。
OpenGL ES 只支持三邊形。
OpenGL ES 只支持gl開頭的函數,glu庫都不支持。
OpenGL ES 從 OpenGL中刪除的功能:
1. glBegin/glEnd
2. glArrayElement
3. 顯示列表
4. 求值器
5. 索引色模式
6. 自定義裁剪平面
7. glRect
8. 圖像處理(這個一般顯卡也沒有,FireGL/Quadro顯卡有)
9. 反饋緩沖
10. 選擇緩沖
11. 累積緩沖
12. 邊界標志
13. glPolygonMode
14. GL_QUADS,GL_QUAD_STRIP,GL_POLYGON
15. glPushAttrib,glPopAttrib,glPushClientAttrib,glPopClientAttrib
16. TEXTURE_1D、TEXTURE_3D、TEXTURE_RECT、TEXTURE_CUBE_MAP
17. GL_COMBINE
18. 自動紋理坐標生成
19. 紋理邊界
20. GL_CLAMP、GL_CLAMP_TO_BORDER
21. 消失紋理代表
22. 紋理LOD限定
23. 紋理偏好限定
24. 紋理自動壓縮解壓
25. glDrawPixels,glPixelTransfer,glPixelZoom
26. glReadBuffer,glDrawBuffer,glCopyPixels

OpenGL ES 2.0 2011-10-9
2.0和1.1不兼容。
- 2.0使用的頭文件是ndk的include目錄下的GLES2目錄,有gl2.h,gl2ext.h,gl2platform.h,而1.1使用的是GLES目錄。
- 2.0使用的庫文件是ndk的lib目錄下的libGLESv2.so,而1.1使用的是libGLESv1_CM.so。
- 2.0中取消了很多1.1函數,例如glMatrixModel和glLoadIdentity等。
OpenGL著色語言(GLSL――OpenGL Shading Language)
- 使用2.0,必須學此語言。因為很多1.1的函數都被取消了。

san-angeles NDK OpenGL ES 1.1的例子程序 2012-3-8
San Angeles,查維基網路,是一個虛構的未來概念城市,位於南加州。常在電影中出現,來源自Los Angeles和San Diego.
該程序的演示效果是,觀察一個宏偉的城市,地面是鏡面有建築倒影,城市中有飛船飛過。前後有5、6個觀察點,而且鏡頭在每個觀察點不停的移動。
這個例子,用NDK(C++)調用OpenGL ES 1.1來繪制了San Angeles這個城市。基本上全部使用了NDK,Java程序只有1個。
用vc2005演示一下,目的通過跟蹤代碼了解一些細節。方法是:
- 將jni下所有的.h文件,以及demo.c,app-win32.c復制出來,放在一個專門的目錄下,然後改造成用OpenGL的而不是ES的。(或者乾脆刪除大段的繪制代碼,保證編譯通過)
首先分析Java代碼
- DemoActivity.java,這是唯一的Java文件,它主要需要下列4個jni的介面:
- private static native void nativeInit(); // 初始化
- private static native void nativeResize(int w, int h);
- private static native void nativeRender(); // 繪制1幀
- private static native void nativeDone();
其次分析C++代碼 app-android.c
- 首先,調用了importGLInit(),動態導入OpenGL的庫。
- 其次,調用了 appInit(),在內存中建立了平台無關的3D對象集合。建立方法是用一個數組,用類似畫圓拔高的方式產生諸多三角形。
- 然後,在每個時鍾周期中調用appRender(),細節是:
- prepareFrame(width, height); // 准備OpenGL ES繪制框架。其實就是清空顏色和深度緩沖,重置投影和模型矩陣。
- camTrack(); // 算好在當前時鍾周期,鏡頭的位置、朝向及焦距等。然後調用gluLookAt來實現。
- configureLightAndMaterial(); // 設置光源和材質
- drawModels(-1); // 先繪制倒影(其實就是將所有模型z軸倒過來畫)
- 第一個循環,是畫精緻的物體
- 第二個循環,是畫運動的物體
- drawGroundPlane(); // 再繪制鏡子一般的地面。在繪制前取消光照,打開混合,然後繪制。繪制後還原狀態。
- drawModels(1); // 再繪制所有模型
- drawFadeQuad(); // 最後繪制淡出框,用融合的方式畫一個遮住整個視口的2D框,融合系數和時間相關。

③ 為什麼Android系統應用更新不是讓新apk替換進入/system分區

這里涉及到兩個問題:odex和第三方製作的Gapps刷機包

買來一個android設備,沒有root前都是這樣子的:

只要不是內地的android設備基本都會搭載google提供的一系列android手機的應用,大家會叫它Gapps,GMS什麼的。這一批應用包含了表面的從gmail到youtube到play service到背後的公共用途的軟體包,以及很多framework和本地代碼動態運行庫及其它內容。

當然其中大部分可執行代碼都以dex這種可以由dalvik這個java虛擬機執行的的形式存在,具體的說,是以odex的形式存在。

dalvik在運行dex之前,需要做一系列驗證,確保dex里頭的代碼是符合規范,是能安全執行的,dalvik做完檢查後,將dex做一些處理(比如調整,加校驗位等),就變成了odex。實際上在dalvik里頭運行的是odex。

所以,正式發售的設備的內置應用程序,都是以***.apk加上同名的***.odex存在的。

因為這種機制,把一對apk/odex放到另一台不同(具體)型號的設備里是沒法運行的。

而google不允許包括CM在內的第三方rom里內置Gapps。Gapps是收費的私有軟體。

所以,目前想到的辦法是藉助smali等開源工具做deodex,將odex轉化成可以通用的dex。這樣重新打包了Gapps後,才能作為刷機包塞到別的設備中

-----------------------------------
google會不會對gapps進行升級?

顯然是的,一部分的升級會通過play store進行,比如更新play store本身,裝一個google play service(這個apk實際上是一個供第三方應用程序的API合集,有了它才能在第三方應用中使用google maps的矢量地圖,通過google+登陸等項目)

另外一部分則要通過設備的OTA做,因為這個更新實在太大了,同一個手機,從android4.0升級到android4.1時,可能每一個Gapps的文件都需要替換,而且android安裝應用程序的機制說到底只能改變apk文件,但它動不了framework,library,所以這些東西的更新需要藉助OTA等通過bootloader許可直接修改system分區的手段

在第三方打包好的gapps里就能發現,gapps有很多很多的版本

我覺得刷gapps的原則是,首先gapps要適配設備當前android的大版本,給4.1用的gapps就不應該刷到4.0系統里,使用intel處理器的尤其要注意,這個gapps是不是給x86設備的,Z24x0/27x0隻能有限度地翻譯arm代碼,把arm設備的gapps給x86設備用,可能會導致系統根本無法啟動;然後越新打包出來的gapps問題可能會越少。

④ 想做一個關於安卓系統的課題研究,不知能從那些方面入手

1.什麼是Android手機?
答:簡單的說Android手機是運行在谷歌Android手機操作系統上的手機統稱為Android手機,也可稱為gphone手機.
2.目前Android手機有哪些廠商在生產?
答:最常見的有HTC、摩托羅拉、三星、華為,Acer(宏碁),美迪奧(MDO),索愛,LG,OPPO,首派,魅族等等。
3.目前市面上有哪些主流的Android手機型號可以選擇?
答:HTC: G1(Dream),G2(Magic),G3(Hero),G4(Tatto),G5(Nexus one),G6(Legend),G7(Desire)摩托羅拉: Droid,Milestone(里程碑),XT701,XT800,ME600,Shole,Nexus 2 shadow三星:i5700 Spica,i7500 Galaxy,SCH-I899華為:U8220/T-Mobile Pulse索愛: X10還有其它的就不一一列舉了。
4.目前Android操作系統有哪些版本的?
答:Android1.0,Android1.5,Android1.6,Android2.0,Android2.1,Android2.2, android 2.3ROM等更高版本!
5.Android手機軟體格式是什麼?
答:Android手機應該程序包的擴展名為.apk
6.Android手機都支持哪些格式的擴展名?
答:支持.apk文件和.jar文件(.jar需要安裝java虛擬器)才可以正常安裝。
7.Android手機支持哪些音頻格式?
答 .mp3,wma,ogg,AAC (AAC , AAC
, AAC-LC) AMR-NB,WAV,MIDI
8.Android手機支持哪些視頻格式?
答:mp4/3gp格式是Android手機支持的。
9.Android網路全書
答:詳情請參考: Android網路知識
10.購買Android手機前需要了解的一些知識
答:詳情請參考: 購買android手機之前必須要知道的知識
11.HTC手機不同版本的詳細資料
答:詳細請參考: HTC手機不同版本的詳細資料
12.Android機器是否支持關機鬧鍾?
答:目前的Android機器都不支持關機鬧鍾這個功能!
13.Android系統的機器能刷WM的系統嗎?
答:目前為止還未出現可在Android機器上刷WM系統的辦法!故暫不支持!
14.Android只是個手機系統嗎?
答:不是的,Android系統不知是單純的手機系統。目前已經被寬泛的應用在MID設備、上網本以及其他的數碼設備上。
15.什麼是HTC Sense界面?
答:基於創新的傳統與增進人類生活的熱情,HTC提供以人為中心的行動通訊經驗。從HTC Hero開始,HTC推出的所有產品都將整合HTCSense?並符合三個設計理念,包括Make It Mine、Stay Close、與Discover the Unexpected。
16.Android哪裡最特別?
答:詳情請參考: Android平台哪裡最特別?
17.Android手機能否查看gif圖片?
答:可以看GIF圖片,不過只能看到第一幀,也就是說無法查看完整的 GIF 動態圖片。
18.目前Android手機應用程序多嗎?
答:截止到2010年5月市場上已經超過了50000多個應用程序,幾乎覆蓋絕大部分軟體.而且還在不斷的增長中.足夠日常和娛樂使用.
19.ANDROID手機支持錄音功能嗎?
答:是支持的,不過一些ROM沒有自帶錄音程序.我們自己可以下載一些錄音軟體,在論壇里搜索:recorder
20.什麼叫偽軍?
在android上有些手機被稱為偽軍那麼什麼是偽軍呢,偽軍是指32B的機子,但radio卻是3.22.xx.xx.。 看清楚了,如果你的機子,關機後同時按返回 開機,看到第一行是32B,而radio卻是3.22.xx.xx,就是偽軍,沒什麼懷疑的。當然行貨A6188W不算,那個垃圾本來就是這樣。要注意,32B的機子原本radio應該是2.22.xx.xx為什麼會這樣,可能是為了破解完美SPL,所以JS就刷了32A的radio與spl對於這種機子,recovery與ROM都要選擇32A的。而且這種機子,我的建議是能打電話就行了,少折騰。當然也有朋友折騰回正規軍的。

可能剛剛接觸Android手機或者接觸了一段時間Android手機的玩家還不完全明白一些關於Android系統的名詞,看完下面關於Android的一些名詞介紹,你就可以大概知道一些Android的知識了。1.固件、刷固件固件是指固化的軟體,英文為firmware,它是把某個系統程序寫入到特定的硬體系統中的flashROM。手 機固件相當於手機的系統,刷新固件就相當於刷系統。不同的手機對應不同的固件,在刷固件前應該充分了解當前固件和所刷固件的優點缺點和兼容性, 並做好充分的准備。2.ROM(包)智能手機配置中的ROM指的是EEProm(電擦除可寫只讀存儲器)類似於計算機的硬碟,手機里能存多少東西就看他的容量了。底包+更新包統稱為一個ROM包。3.固件版本固件版本是指官方發布的固件的版本號!裡麵包含了應用部分的更新和基帶部分的更新,官方新固件的推出的主要目的是為了修復已往固件中存在的BUG以及優化相關性能。4.CID、SUPERCIDCID是CustomerIDentity的簡稱,簡單來說就是手機的平台版本,破解限制之後的CID稱為SUPERCID。刷機過程中SPL需要根據CID效驗ROM是否可用,並決定是否刷入,一般情況下要求一定要對應CID的ROM才可以用,cid不同的rom是刷不上去的。 對於普通的CID來說,一般有兩個限制:1)不能刷入低版本的的ROM,2)不能刷入不同平台的ROM,比如:在台版機上刷歐版ROM、跨型號刷ROM 等。SUPERCID有些型號手機的CID的限制是可以通過軟體來破解的,已知的有577W、586W等,但也有也些型號目前還沒有有效的方法破解 CID,如838G4。破解限制之後的cid稱為SUPERCID,擁有SUPERCID的機器可以刷任意版本和平台的ROM。具體來說,同 一個手機既可以刷台灣的ROM,也可以刷日本的rom,也可以刷香港的rom等。甚至也可以刷進一個其他型號手機的ROM(如586W刷577W)。但是 這也帶來很大的危險性,因為沒有了限制,沒有了校驗,刷入一個錯誤的ROM也是很容易的事。我們一般刷機時需要破解為SUPERCID,因為一方面現在大 部分情況下刷機所用的ROM都是通不過CID校驗的;另一方面萬一刷機失敗,對於SuperCID的手機更容易修復。5.HTC SenseHTC為Android系統設計的用戶界面。從HTC Hero開始,HTC推出的所有產品都將整合HTC Sense。並符合三個設計理念,包括Make It Mine、Stay Close、與Discover the Unexpected。[/forecolor][forecolor=#FF001F]6.Recovery籠統的說,就是一個刷機的工程界面。如果你裝過系統,你可能知道dos界面或者winPE,安裝了 Recovery相當於給系統安了一個dos界面。在recovery界面可以選擇安裝系統,清空數據,ghost備份系統,恢復系統等等。刷 recovery與刷rom不沖突。7.APP TO SD、APP2SD一些Android機器在安裝程序的時候默認是安裝在機器內存上的,這就會導致原本不大的內存被佔用,運行速度降低,而存儲卡卻利用率很低的情況。APP TO SD就是把程序安裝到SD卡從而騰出手機內存提高運行速度的意思。APP2SD亦然,只是諧音而已。8.RootRoot許可權跟我們在Windows系統下的Administrator許可權可以理解成一個概念 。Root是Android系統中的超級管理員用戶帳戶,該帳戶擁有整個系統至高無上的權利,所有對象他都可以操作。只有擁有了這個許可權我們才可以將原版 系統刷新為改版的各種系統,比如簡體中文系統。9.RADIORadio簡單的說是無線通信模塊的驅動程序。ROM是系統程序,Radio負責網路通信,ROM和Radio可以分開刷,互不影響[b]10.ROM分類一般分為兩大類,一種是出自手機製造商官方的原版ROM,特點是穩定,功能上隨廠商定製而各有不同;另一種是開發愛好者利用官方發布的源代碼自主編譯的原生ROM,特點是根據用戶具體需求進行調整,使ROM更符合不同地區用戶的使用習慣。11.IPL、SPLIPL英文全稱是InitialProgramLoader,負責主板,電源、硬體初始化程序、並把SPL裝入RAM。IPL損壞了可把手機扔進河裡,或者通過換字型檔來解決。SPL英文全稱是SecondProgramLoader,「第二次裝系統」,就是負責裝載OS操作系統到RAM中。另外SPL還包括許多系統命令,如mtty中使用的命令等。SPL損壞了還可以用燒錄器重寫。SPL一般提供這幾部分功能:檢測手機硬體、尋找系統啟動分區、啟動操作系統為系統的基本維護提供操作界面,可以通過數據線與操作終端(如PC)建立連 接,並接受和執行相應命令。它裡麵包含許多命令,像r2sd,l,doctest(危險命令,他會擦除gsmdata)等。我們常說的三色屏就是由SPL 驅動的。檢測SD卡,當你把一些特殊製作的SD卡插入後,SPL可以在啟動時校驗並根據SD卡內容刷機或執行一些命令。這有點類似於PC的從軟碟機啟動。IPL和SPL版本可以在三色屏中查看。按住照相鍵不放,然後短按電源開機鍵即可進入三色屏查看相關信息。12.SignSign是指給Rom包或者Apk應用程序簽名,只有簽名過的Rom或者Apk才可以刷入或安裝到手機上。13.Cyanogen、CMCyanogen是國外一位牛人,其製作的CyanogenMod系列Rom比較流行,主要追求的就是速度,CyanogenMod的縮寫就是CM,因而我們也常見CM ROM。14.adbadb是Android Debug Bridge的縮寫,意為Android系統的調試橋。通過adb我們可以在Eclipse中方面通過DDMS來調試Android程序,其實這就是用於 谷歌Android系統的debug調試工具。adb的工作方式比較特殊,採用監聽Socket TCP 5554等埠的方式讓IDE和Qemu通訊,默認情況下adb會daemon相關的網路埠,所以當我們運行APK安裝器時adb進程就會自動運行。除了上述的操作功能之外,我們還可以通過adb管理設備或手機模擬器的狀態。還可以進行很多手機操作,比如刷ROM系統升級、運行shell命令

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:432
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:743
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:146
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:233
java駝峰 發布:2025-02-02 09:13:26 瀏覽:651
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:532
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726