編輯:關於Android編程
環境:
CentOS 5.4
VMware 9.0.1 build-894247
一、前期准備工作:
1、下載ndk
http://dl.google.com/android/ndk/android-ndk-r9c-linux-x86.tar.bz2
2、下載adt
http://dl.google.com/android/adt/adt-bundle-linux-x86-20131030.zip
官網地址 http://developer.android.com/sdk/index.html
不明白什麼是adt看這裡
http://blog.csdn.net/aizquan/article/details/8974750
完成後,將以上兩個東西解壓到虛擬機上。
二、設置環境變量,將如下路徑加進PATH
android-ndk-r9c
adt-bundle-linux-x86-20131030/sdk/platform-tools
adt-bundle-linux-x86-20131030/sdk/tools
三、手機上運行gdbserver(這一步可能比較費事,待補充)
將gdbserver push到手機上。並用adb啟動gdbserver。留意版本號!!
130|shell@android:/ $ gdbserver --version
四、在虛擬機上執行
[root@localhost bin]# cd /home/randy/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin
[root@localhost bin]# ./arm-linux-androideabi-gdb
/mnt/hgfs/CodeBlocks/TTS/arm-linux/test 紅色部分是你的可執行文件(交叉編譯得到的)
GNU gdb (GDB) 7.3.1-gg2 版本號要與gdbserver一致
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "--host=x86_64-linux-gnu --target=arm-linux-android".
For bug reporting instructions, please see:
Reading symbols from /mnt/hgfs/CodeBlocks/TTS/arm-linux/test...done.
(gdb) shell adb forward tcp:1234 tcp:1234
(gdb) target remote 127.0.0.1:1234
Remote debugging using 127.0.0.1:1234
0x00008120 in _start ()
(gdb) bt
#0 0x00008120 in _start ()
(gdb) b main.c:42
Breakpoint 1 at 0x8290: file src/main.c, line 42.
(gdb) c
Continuing.
Breakpoint 1, main (argc=1, argv=0xbefc1ad4) at src/main.c:42
42 storePunctuationAndWord(cStringToExamine);
(gdb)
補充說明下交叉編譯命令的選項
[root@localhost TTS]# arm-linux-androideabi-gcc -g -o arm-linux/test src/main.c src/Table.c src/WordSegment.c src/TTS.c -L /usr/local/arm-linux/lib -static -l charset -l iconv -I /usr/local/arm-linux/include -I ./include
arm-linux-androideabi-gcc交叉編譯器,在android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin下
-g 編譯出的可執行文件帶調試符號
-o arm-linux/test最終可執行文件叫test
src/main.c src/Table.c src/WordSegment.c src/TTS.c 幾個源文件
-L /usr/local/arm-linux/lib -static -l charset -l iconv -I /usr/local/arm-linux/include -I ./include 依賴的動態庫和頭文件路徑
ListView是每個app中都要使用的,所以今天我來總結下ListView的使用和一些簡單的優化。先看下運行效果:一、創建數據庫為了模擬數據,這裡將數據保存數據庫中,順
android中的json的讀取1.讀取Json文件中的json內容首先在將json文件放在目錄assets下:test.json {programmers:[
轉帖請注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/17483273),請尊重他人的
初次用到回調是在Fragment和Activity之間進行通信的時候,當時感覺很難理解,但又覺得這個方法使用起來很方便,所以對它進行仔細的研究。發現回調不僅僅是實現功能那