⑴ android可以用啥編程語言 可以用C語言在Android上編程嗎 有什麼用C語言編Andr
安卓開發,都是用java語言的。上層都是用java實現的。
用c語言的話,是開發底層,也是NDK,可以搜一下。
用c語言可以開發像網路地圖的so文件,直接跟手機硬體交互的。還有一些用到與硬體直接交互的都是需要c語言的。
如果只是開發一個應用的話,java加AndroidSdk就可以了,不用c語言
⑵ 關於 Android C語言 開發
剛好最近我正在學習android可以幫到你。
1.JAVA開發是Android的應用部分
2.C/C++語言開發是Android核心的部分
Android的C語言其實是指的Android底層的linux內核開發,剛好你是學習Linux C語言的這樣就有用武之地。Android的底層是由Linux開發的,並建立在Linux之上的JAVA虛擬機來實現的。
所以要學習Android C語言的開發,建議看看《Android系統原理及開發要點詳解》著本書講的內容都是底層的內容,一定要買。不過JAVA語言的部分也一定要看,因為C語言做的驅動最後還是需要被JAVA虛擬機調用。
另外要做AndroidC語言開發還需要注意一下幾點:
1.需要購買開發板來學習,或者開源的手機,這樣可以直觀的了解驅動的運作模式和有效調試
2.需要下載android源代碼,因為Android SDK開發是不會用到C語言的
3.android的NDK開發其實也是C/C++語言調用一些函數來實現,建議也看
4.最後這個網址可以去看,多是講底層資料的:http://bbs.starandroid.com/showtopic.aspx?topicid=10712&page=end
建議:
1.JAVA還是要看的
2.建議往Android底層硬體開發走
⑶ Android上如何用C語言編程
害哥搞這個離線包搞了個把小時。為了清楚,上個圖: 敲個LS,什麼東西都沒有,這個目錄是cygwin的安裝目錄下面的home文件夾下的用戶名文件夾。接下來是配置與Android相關的。在home/用戶名,這個文件夾下有一個文件為.bash_profile,打開它,到最後添加兩行NDK的環境變數:NDK_ROOT=/cygdrive/d/android-ndk-r6export NDK_ROOT上面的意思是,ndk的目錄是,d:/android-ndk-r6添加完之後,關閉Cygwin重新啟動一下,然後敲入cd $NDK_ROOT,是否進入到ndk的目錄了?否則就看看哪個字母錯了。在ndk的目錄下samples下有很多例子,隨便弄個就可編譯了。下面是新建一個項目,以對C語言在項目中的位置更清楚。打開Eclipse新建一個Android項目,取名hellojni,為了清晰,便於維護,及各種各樣的好處,JNI的JAVA代碼單獨一個類,單獨一個包。其實最好能不用JNI就別用JNI,這東西負作用巨大,特別是在用到JNI復雜的地方,什麼內存啊,類型啊,哪裡調用的方法,異常啊,可靠性都非常麻煩。非要用JNI的復雜功能,做好兩件事,做之前充分設計,設計之前充分學習一下JNI文檔。當然對於一些簡單的應用,那隻需要充分仔細。作好參數,返回值的檢查,記得釋放內存就行了。
⑷ 求Android4高級編程(第3版)pdf完整版
⑸ 《Android編程權威指南(第3版)》pdf下載在線閱讀,求百度網盤雲資源
《Android編程權威指南(第3版)》(比爾·菲利普斯 (Bill Phillips))電子書網盤下載免費在線閱讀
資源鏈接:
鏈接:https://pan..com/s/1fRrWFkv2DMXxDxO2X_C7-A 密碼:a9fu
書名:Android編程權威指南(第3版)
作者:比爾·菲利普斯 (Bill Phillips)
譯者:王明發
豆瓣評分:8.6
出版社:人民郵電出版社
出版年份:2017-6
頁數:576
內容簡介:
Big Nerd Ranch 是美國一家專業的移動開發技術培訓機構。本書主要以其Android 訓練營教學課程為基礎,融合了幾位作者多年的心得體會,是一本完全面向實戰的Android 編程權威指南。全書共36 章,詳細介紹了8 個Android 應用的開發過程。通過這些精心設計的應用,讀者可掌握很多重要的理論知識和開發技巧,獲得寶貴的開發經驗。
第3 版較之前版本增加了對數據綁定等新工具的介紹,同時新增了針對單元測試、輔助功能和MVVM 架構等主題的章節。如果你熟悉Java 語言,或者了解面向對象編程,那就立刻開始Android 編程之旅吧!
作者簡介:
作者簡介:
Bill Phillips
Big Nerd Ranch資深講師。他與人合作開發了廣受好評的Android訓練營培訓課程,並為之編寫教材(包括本書的第1版和第2版)。Bill一直堅持撰寫博客、閱讀各類文學作品、作曲奏樂以及著書。
Chris Stewart
Big Nerd Ranch的Android團隊主管、Android訓練營資深講師。他致力於不斷取得進步和精進技能。工作之餘,Chris喜歡遠足和旅行。
Kristin Marsicano
Big Nerd Ranch資深講師、Android開發者。她喜歡分享知識,對學習、軟體開發以及二者的交集充滿熱情。在授課和開發應用之餘,Kristin會為家人烹調美食、練習瑜伽或學習新知識。
譯者簡介:
王明發
畢業於華東理工大學。軟體開發及項目管理者,擁有近十年的軟體開發及項目管理經驗;除了翻譯本書前兩版之外,另譯有《寫給大家看的項目管理書(第3版)》。
⑹ 如何在android程序中使用c語言編程
你說的是安卓程序編程還是在安卓系統裡面學習c語言?如果是前者的話,Google官方提供了一個叫JNI的方式,你可以看看相關的東西。如果是後者,有很多Cdroid是一個比較好的方案
⑺ android應用能用c語言編寫嗎
現在主流是用java來寫,借用某些平台,可以實現代碼大部分是C++或者python等。 JNI的實現也是C/C++代碼,但是只是對java層功能的一種補償。 簡而言之,Android應用層程序的主體實現是java代碼。但是借用其他包裝好的平台(比如cocos)可以實現較少java或者不用java。
⑻ 有能在Android系統上運行的c語言編程軟體嗎,推薦一下
C4droid是款Android設備上的C/C++程序編譯器[2] ,默認以tcc(tiny c compiler)為編譯器,可以選擇安裝gcc插件(20mb,只有root用戶可以使用),選用gcc後,可以用sdl(簡單直控媒體層庫,需安裝sdl plugin for c4droid)和qt(nokia官方開發庫,需安裝sdl plugin for c4droid)。也可以開發native android app(需安裝sdl plugin for c4droid),就像google ndk一樣。軟體支持代碼高亮,編譯時間隨cpu主頻而定,主頻越高編譯越快。gcc插件版本4.7.2提供了示列程序,包含sdl,android native,qt和命令行測試程序源碼。
⑼ 如何在Android系統上運行C語言的程序
執行語句:
# arm-linux-readelf -a ./xlisten-arm | grep "Shared"
0x00000001 (NEEDED) Shared library: [libsqlite3.so.0]
0x00000001 (NEEDED) Shared library: [libm.so.6]
0x00000001 (NEEDED) Shared library: [libcrypt.so.1]
0x00000001 (NEEDED) Shared library: [libpthread.so.0]
0x00000001 (NEEDED) Shared library: [libdl.so.2]
0x00000001 (NEEDED) Shared library: [libc.so.6]
知道所需的動態鏈接庫後,到android文件系統中去照著寫庫文件,在目錄/system/lib 中,果然缺少相應的庫文件,於是認為找到了我問題的根源所在,在復制相應庫文件的時候為了保留原來的屬性,還特意用了
#cp -a filename dir
誰知將這些庫都添加進去以後,仍然無濟於事!
看來不僅僅事庫文件缺失的問題了,而且一般來說,如果真的是因為缺少庫文件而導致的問題,終端會提示我們鏈接某庫文件時沒有找到該庫文件。
2.正確的解決方法:
將程序編譯的時候選擇靜態編譯,即使用選項 -static
我是對Makefile文件中的CFLAG變數進行修改
CFLAGS = -Wall
改為;
CFLAGS = -Wall -static
然而此時又出現問題了:
undefined reference to `pthread_mutex_*'
undefined reference to `dl*'
提示沒有定義這些函數,於是在包含的庫文件中添加了這兩個庫文件
在Makefile中,修改LIBS變數;
LIBS = -lsqlite3 -lm -lcrypt
改為:
LIBS = -lsqlite3 -lm -lcrypt -lpthread -ldl
然後進行交叉編譯,成功了!
編譯出來的可執行文件比較大,因為事靜態編譯的,我的有2M多,
拷貝到開發板的andriod系統中,
修改許可權:
#chmod 777 xlisten-arm
執行:
/ # ./xlisten-arm
OK!能夠正確的執行了!