1. android原始碼可以編譯出android sdk、adb等工具、android檔案系統,以及adt外掛程式,也就是說,我們可以從android原始碼編譯出所有android相關的東西。
2. 獲取當前時間的後乙個月
date currenttime = new date();
calendar calendar = calendar.getinstance();
calendar.settime(currenttime);
calendar.add(calendar.month, backup.getinterval_months());
******dateformat formatter = new ******dateformat("yyyy-mm-dd hh:mm:ss");
system.out.println(formatter.format(calendar.gettime()));
3. make -j 命令列引數 指同時執行命令的個數。如果沒有這個引數,make執行命令時能執行多少就執行多少。如果有乙個以上的「-j」引數,那麼僅最後乙個「-j」才是有效的。(注意這個引數在ms-dos中是無用的)
4. adb全稱android debug bridge, 是android sdk裡的乙個工具, 用這個工具可以直接操作管理android模擬器或者真實的andriod裝置(如g1手機).
adb是乙個 客戶端-伺服器端 程式, 其中客戶端是你用來操作的電腦, 伺服器端是android裝置.
5. linux export命令
1. 功能說明:設定或顯示環境變數。語 法:export [-fnp][變數名稱]=[變數設定值]
補充說明:在shell中執行程式時,shell會提供一組環境變數。export可新增,修改或刪除環境變數,供後續執行的程式使用。export的效力僅及於該此登入操作
2. 宣告全域性變數,可以被其子shell使用。
6. ubuntu環境變數在/etc/environment 定義初始化,在其他配置檔案中可通過export 追加。
7. ubuntu 11.10 編譯android4.0.3時遇到的錯誤:make: *** [out/host/linux-x86/obj/executables/clang_intermediates/clang]
/bin/bash: out/host/linux-x86/bin/clang: 許可權不夠
install: out/host/linux-x86/bin/clang
/bin/bash: out/host/linux-x86/bin/clang: 無法執行二進位制檔案make: *** [out/target/product/generic/obj/shared_libraries/libclcore.bc_intermediates/rs_cl.bc] 錯誤 126
target strip: libwebcore (out/target/product/generic/obj/lib/libwebcore.so)
prebuilt/linux-x86/toolchain/arm-linux-androideabi-4.4.x/bin/arm-linux-androideabi-strip:out/target/product/generic/symbols/system/lib/libwebcore.so: file format not recognizedmake: *** [out/target/product/generic/obj/lib/libwebcore.so] 錯誤 1
在網上搜尋,沒有找到一模一樣的問題,但做了以下兩項修改。這裡面有的問題是通過重新編譯就解決的,也不知道以下的兩個解決辦法到底起作用了沒有。
初始化編譯環境 . build/envsetup.sh
由於ubuntu
11.10採用了gcc4.6.1,版本太高。
解決:使用gcc4.4.6版本進行編譯.
ubuntu
11.10的gcc版本是4.6.1,版本太高,編譯
android
時出錯,要把gcc版本改為4.4.6, 4.5的版本據說可以,但沒試過.
通 過gcc -v命令可以發現gcc庫在/usr/lib/gcc/i686-linux-gnu目錄下,該目錄下有當前系統支援的各種版本gcc庫 。在安裝gcc 4.4前該目錄下是沒有4.4目錄的,安裝gcc 4.4後該目錄下就會多出4.4這個目錄,且該4.4目錄下有各種相應庫檔案。
ubuntu
32bit系統下安裝gcc 4.4的最好方法是僅用以下兩條命令,不需要其它命令,否則編譯時可能會出錯。
sudo apt-get install gcc-4.4
sudo apt-get install g++-4.4
裝完後在/usr/bin目錄下
$ ls -l gcc*
lrwxrwxrwx 1 root root 7 2011-10-29 09:11 gcc -> gcc-4.6
-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 gcc-4.4
-rwxr-xr-x 1 root root 302104 2011-09-17 05:43 gcc-4.6
發現gcc 鏈結到gcc-4.6, 需要將它改為鏈結到gcc-4.4 :
sudo mv gcc gcc.bak
sudo ln -s gcc-4.4 gcc
同理ls -l g++*
lrwxrwxrwx 1 root root 7 2011-08-14 15:17 g++ -> g++-4.6
-rwxr-xr-x 1 root root 228640 2011-10-06 05:45 g++-4.4
-rwxr-xr-x 1 root root 306200 2011-09-17 05:39 g++-4.6
需要將g++鏈結改為g++-4.4:
/usr/bin$ sudo mv g++ g++.bak
/usr/bin$sudo ln -s g++-4.4 g++
再檢視gcc和g++版本號:
gcc -v
g++ -v
均顯示gcc version 4.4.6 ,說明gcc 4.4安裝成功。
測試:編譯
android
,從2011-10-29 23:58開始,到2011-10-30 01:42編譯完成,沒有錯誤。這驗證了gcc 4.4安裝正確,也驗證了android檔案與高版本的gcc不相容。
菜鳥學習歷程 6 關鍵字 指標
關鍵字 1.extern 宣告外部變數,變數在其他檔案中定義,當然這個變數一定要是全域性變數 test.c include int i 1 int main print.c include extern int i void print 2.static 用static修飾全域性變數時,限定了作用域...
菜鳥成長記 runtime歷程
去面乙個有一年以上工作年限的ios開發崗位,如果面試官不是搞技術的,runtime一般問不到,但凡是乙個懂技術的面試官面乙個一年以上的求職者,runtime執行機制是多半會問到的,runtime非常強大,很多人都敗在它魔爪之下,當然我在專案中還沒有用到過runtime,一般比較好點的三方庫都會使用到...
c sharp 菜鳥的學習歷程
新手駕到,第一天學習,忘走在前方的前輩們給予晚輩我多多的指教.謝謝!引用外部的命名空間 using system using system.collections.generic using system.linq using system.text using system.threading.t...