可以的,只要編譯器支持,C語言程序不像JAVA,最終都會(huì)被編譯器編譯成機(jī)器代碼的,所以關(guān)鍵是編譯器能不能編譯成相關(guān)CPU和操作系統(tǒng)支持的代碼。dos是的批處理是不支持的。編寫手機(jī)軟件目前主要還是用C和JAVA,C用得最多

創(chuàng)新互聯(lián)主要從事做網(wǎng)站、網(wǎng)站設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)包河,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220
(1) 如果你開發(fā)Android上層APP,使用Android NDK,將下面C語言開發(fā)的lib通過JNI接口給上層APP使用。
(2) Android底層本來就是Linux,如果是搞底層的東西,這和在Linux下開發(fā)C語言程序沒什么區(qū)別。
在Android系統(tǒng)上運(yùn)行C語言的程序的方法:
1. 查看可執(zhí)行文件xlisten-arm所需要的動(dòng)態(tài)鏈接庫:
執(zhí)行語句:
2. 將程序編譯的時(shí)候選擇靜態(tài)編譯,即使用選項(xiàng) -static
對(duì)Makefile文件中的CFLAG變量進(jìn)行修改:
CFLAGS? =? -Wall
改為:
CFLAGS? =? -Wall -static
3. 在Makefile中,修改LIBS變量:
LIBS??? = -lsqlite3 -lm -lcrypt
改為:
LIBS??? = -lsqlite3 -lm -lcrypt -lpthread -ldl
然后進(jìn)行交叉編譯,成功了!
4. 編譯出來的可執(zhí)行文件比較大,因?yàn)槭蚂o態(tài)編譯的,有2M多,
拷貝到開發(fā)板的andriod系統(tǒng)中,
修改權(quán)限:
#chmod 777 xlisten-arm
5. 執(zhí)行:
/ # ./xlisten-arm
這樣就能夠正確的執(zhí)行了!
Android系統(tǒng)簡介:
Android是一種基于Linux的自由及開放源代碼的操作系統(tǒng),主要使用于移動(dòng)設(shè)備,如智能手機(jī)和平板電腦,由Google公司和開放手機(jī)聯(lián)盟領(lǐng)導(dǎo)及開發(fā)。尚未有統(tǒng)一中文名稱,中國大陸地區(qū)較多人使用“安卓”或“安致”。Android操作系統(tǒng)最初由Andy Rubin開發(fā),主要支持手機(jī)。
Android NDK(R5, 適用Android 2.3系統(tǒng))可撇開Java用C/C++獨(dú)立開發(fā)android軟件和游戲,甚至是聲音軟件。谷歌的Android 開發(fā)人員也增加了一個(gè)完整的C語言實(shí)施案例到演示庫了。
以前版本不可以
ADB是一個(gè) 客戶端-服務(wù)器端 程序, 其中客戶端是你用來操作的電腦, 服務(wù)器端是android設(shè)備.
先說安裝方法, 電腦上需要安裝客戶端. 客戶端包含在sdk里. 設(shè)備上不需要安裝, 只需要在手機(jī)上打開選項(xiàng)settings-applications-development-USBdebugging.
對(duì)于Mac和Linux用戶, 下載好的sdk解壓后, 可以放~或者任意目錄. 然后修改~/.bash_profile文件, 設(shè)置運(yùn)行環(huán)境指向sdk的tools目錄.
具體是打開~/.bash_profile文件(如果沒有此文件也可以自行添加), 在里面加入一行:
export PATH=${PATH}:你的sdk目錄/tools
然后就可以使用adb命令了.
嫌安裝麻煩的同學(xué)其實(shí)也可以省去上面安裝步驟, 直接輸入完整路徑來使用命令
對(duì)于windows xp用戶, 需要先安裝usb驅(qū)動(dòng)
android_usb_windows.zip (1.33 MB) , 然后如果你只打算使用adb而不想下載整個(gè)sdk的話, 可以下載這個(gè)單獨(dú)的adb工具包
adb_win.zip (571.56 KB) 下載后解壓, 把里面 adb.exe 和 AdbWinApi.dll 兩個(gè)文件放到系統(tǒng)盤的 windows/system32 文件夾里就可以了
1.確定手機(jī)root了,取得了root權(quán)限才能刪除系統(tǒng)文件呀.
2.下載Android_db.rar,解壓到%windir/%System32下.
3.手機(jī)連接數(shù)據(jù)線,在電腦上打開cmd,然后輸入命令
adb remount
adb shell
su
執(zhí)行完成之后,你會(huì)看到:
* daemon not running. starting it now *
* daemon started successfully *
4.接著就是Linux命令行模式了,輸入
cd system/app
你會(huì)發(fā)現(xiàn)沒啥變化,然后輸入ls回車.
這時(shí)候列表顯示了system/app里面的所有文件,也就是Rom集成的一些軟件了.
5.開始刪除吧.比如刪除Youtube,他的文件名是Youtube.odex和Youtube.apk
我們要?jiǎng)h除這2個(gè)文件,敲入以下命令:
rm Youtube.*
重啟,Youtube已經(jīng)刪除掉了,注意各位同學(xué)千萬不要?jiǎng)h除你不知道是啥的東西.
指定允許AVD的內(nèi)存大小:
emulator -avd avdName -partition-size 256
啟動(dòng)一個(gè)叫avdName的模擬器,允許內(nèi)存最大為256MADB常用的幾個(gè)命令
1. 查看設(shè)備
adb devices
這個(gè)命令是查看當(dāng)前連接的設(shè)備, 連接到計(jì)算機(jī)的android設(shè)備或者模擬器將會(huì)列出顯示
2. 安裝軟件
adb install
這個(gè)命令將指定的apk文件安裝到設(shè)備上
3. 卸載軟件
adb uninstall 軟件名
adb uninstall -k 軟件名
如果加 -k 參數(shù),為卸載軟件但是保留配置和緩存文件.
4. 登錄設(shè)備shell
adb shell
adb shell
這個(gè)命令將登錄設(shè)備的shell.
后面加將是直接運(yùn)行設(shè)備命令, 相當(dāng)于執(zhí)行遠(yuǎn)程命令
5. 從電腦上發(fā)送文件到設(shè)備
adb push 本地路徑 遠(yuǎn)程路徑
用push命令可以把本機(jī)電腦上的文件或者文件夾復(fù)制到設(shè)備(手機(jī))
6. 從設(shè)備上下載文件到電腦
adb pull 遠(yuǎn)程路徑 本地路徑
用pull命令可以把設(shè)備(手機(jī))上的文件或者文件夾復(fù)制到本機(jī)電腦
7. 顯示幫助信息
adb help
這個(gè)命令將顯示幫助信息
刪除Android系統(tǒng)Rom自帶的軟件
Android系統(tǒng)沒有卸載Rom自帶軟件的功能.可能有些同學(xué)很想刪除廢了武功的Youtube,想刪除墻那邊的Twitter.
加上Android的快捷方式?jīng)]法修改沒法自己排序沒法分頁.
安裝的程序太多就會(huì)發(fā)現(xiàn)原來找到自己想要的東西很難.
綜上所述,我覺得告知各位菜鳥同學(xué)如何刪除自帶的程序是很有必要的一件事情.1.確定手機(jī)root了,取得了root權(quán)限才能刪除系統(tǒng)文件呀.
2.下載Android_db.rar,解壓到%windir/%System32下.
3.手機(jī)連接數(shù)據(jù)線,在電腦上打開cmd,然后輸入命令
adb remount
adb shell
su
執(zhí)行完成之后,你會(huì)看到:
* daemon not running. starting it now *
* daemon started successfully *
4.接著就是Linux命令行模式了,輸入
cd system/app
你會(huì)發(fā)現(xiàn)沒啥變化,然后輸入ls回車.
這時(shí)候列表顯示了system/app里面的所有文件,也就是Rom集成的一些軟件了.
5.開始刪除吧.比如刪除Youtube,他的文件名是Youtube.odex和Youtube.apk
我們要?jiǎng)h除這2個(gè)文件,敲入以下命令:
rm Youtube.*
重啟,Youtube已經(jīng)刪除掉了,注意各位同學(xué)千萬不要?jiǎng)h除你不知道是啥的東西.
指定允許AVD的內(nèi)存大小:
emulator -avd avdName -partition-size 256
啟動(dòng)一個(gè)叫avdName的模擬器,允許內(nèi)存最大為256M
以上參考百度經(jīng)驗(yàn),希望對(duì)你有幫助
安卓也可以用C語言編寫,這種方式程序效率高,但需要一些底層知識(shí)。。。(即所謂NDK),Android在支持NDK后是可以實(shí)現(xiàn)用C和C++來編寫的。因?yàn)橛肅++比較多,之前用cocos2d-x寫過Demo游戲。就使用了NDK編譯出.so文件然后放入Android工程用在Java層調(diào)用。Android SDK的Java層是可以通過JNI和C/C++進(jìn)行數(shù)據(jù)交互的。
詳見:
Android NDK | Android Developers
The NDK is a toolset that allows you to implement parts of your app using native-code languages such as C and C++. For certain types of apps, this can be helpful so you can reuse existing code libraries written in these languages, but most apps do not need the Android NDK.
當(dāng)前文章:包含c的android的詞條
瀏覽地址:http://chinadenli.net/article23/dsispcs.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)、電子商務(wù)、商城網(wǎng)站、網(wǎng)站維護(hù)、Google、品牌網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)