(1) 一定要支持比較新的Android版本這里我把Android手機(jī)也算在Android開發(fā)板里面吧。目前,支持Android源碼版本最好的手機(jī)/開發(fā)板應(yīng)該就是Google的干兒子了(Nexus系列),官方最新源碼編譯好了就可以直接在上面跑了,唯一我覺得不太方便的就是手機(jī)的接口太有限,比如沒有串口、有線網(wǎng)口、豐富的GPIO等等,調(diào)試和擴(kuò)展起來比較受限。如果不是購買官方源碼支持的Android設(shè)備/開發(fā)板,那么你就需要開發(fā)板生產(chǎn)商提供對應(yīng)的Android源碼(其實主要是patch包),因此,我舉得如果一個Android開發(fā)板只能提供Android 2.3版的源碼,建議你就不用考慮了。(2)最好選購比較熱門的開發(fā)板孤軍奮戰(zhàn),遇到問題沒人交流是最痛苦的事兒了,因此,我會比較看重那些社區(qū)比較完善和活躍、關(guān)注度和開發(fā)者比較多的開發(fā)板,這里比較推薦一些開源硬件,如樹莓派,Beaglebone等等,國內(nèi)國外都很火,不僅有很多大牛分享開發(fā)經(jīng)驗,而且遇到問題也很容易在社區(qū)搜到解決方案。(3)其他的綜合考慮對于我來說,上面兩個因素是我最看重的,當(dāng)然,也還有其他的可以參考的因素,比如:價格,文檔資料,開發(fā)板的接口(串口、網(wǎng)絡(luò)、USB OTG、HDMI等等),開發(fā)板的處理器廠商(TI?高通?Marvell?)開發(fā)板的性能(CPU、內(nèi)存大小等)。
專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)卓尼免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了千余家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
像榮品電子的6818開發(fā)板、4418開發(fā)板都屬于中低端,5260開發(fā)板屬于中高端。當(dāng)然,要更高端的開發(fā)板也有,不過一般做研發(fā)、自學(xué)這些都已經(jīng)夠了。主要是根據(jù)你的學(xué)習(xí)目的和要求來選擇,還有費用水平。
驅(qū)動開發(fā)的技巧:
驅(qū)動開發(fā)有套路的不管是用戶態(tài)驅(qū)動還是內(nèi)核態(tài)驅(qū)動,基本按照這個套路走,就不會有大問題。特別是初級用戶態(tài)驅(qū)動,是一層很薄的軟件,就像一個洋蔥剝幾層就看到最里面的東西,沒太多技術(shù)。大部分驅(qū)動由于主要做控制和初始化,涉及不到復(fù)雜的算法,所以其實編碼階段大部分都不會太難。
1、有android源碼及開發(fā)板,可編譯燒錄。Android4.4.2源碼,飛思卡爾6Q
2、開發(fā)板內(nèi)存和運(yùn)存有限,并且僅允許打開1到3個定制應(yīng)用
3、定制應(yīng)用需要網(wǎng)絡(luò)升級,系統(tǒng)OTA不維護(hù)三方應(yīng)用升級
4、不考慮adb install和root權(quán)限問題,正式版會關(guān)閉這兩項功能
1、三方應(yīng)用在第一次燒錄時,必須在data分區(qū),即安裝位置必須是,/data/app/三方.apk。且需要保留其自有簽名。
2、僅允許安裝包名和簽名已知且固定的應(yīng)用。如:com.lucien.test,且SHA1碼為:0E:4A:67:A6*****FC:92:6D:64的應(yīng)用,二者必須同時滿足時才可安裝。如果判斷是不被允許的安裝包不給用戶任何提示,直接刪除。
修改device\fsl\imx6\imx6.mk
在PRODUCT_COPY_FILES 添加如下兩行
把三方應(yīng)用及腳本拷貝到device\fsl\imx6\etc\apks目錄下,
copy_apk.sh:
這個腳本是判斷data/app目錄下是否有文件夾"lucien",如果有則認(rèn)為已經(jīng)copy過應(yīng)用直接結(jié)束,否則就拷貝三方應(yīng)用到data分區(qū)。因為飛思卡爾幾乎沒有技術(shù)支持,很多編譯腳本不知在哪里修改,以前的方案是有個vender目錄直接copy進(jìn)去即可。
在packages/apps/PackageInstaller/AndroidManifest.xml添加刪除文件權(quán)限
修改packages/apps/PackageInstaller/src/com/android/packageinstaller/PackageInstallerActivity.java
由于markdown語法顏色沒弄出來,這里簡單說明一下。
//add by lucien和//end by lucien之間是添加的主要內(nèi)容,包名和sha1碼在ALLOW_SHA1 和ALLOW_APP 兩個字符串?dāng)?shù)組里,這兩個數(shù)組的pacakge和sha1下標(biāo)必須嚴(yán)格對應(yīng),是為了在 isAllow(PackageInfo info)函數(shù)少寫一個for循環(huán)。
隨著ARM的不斷發(fā)展,憑借著低于X86平臺的價格,現(xiàn)在安卓主板發(fā)展的
從現(xiàn)階段企業(yè)應(yīng)用較多的產(chǎn)品看:
1、瑞芯微:
RK3188
RK3288
2、飛思卡爾:i.MX6 (高端)這些都是比較主流的,然后低端的全志那些相應(yīng)的支持、兼容性穩(wěn)定性一般,不太推薦
3.榮品瑞芯微Rockchip四核RK3288開發(fā)板評估板
采用瑞芯微RK3288處理器(四核Cortex-A17 Mali-T764 GPU),標(biāo)配2GB內(nèi)存8GB存儲,搭載Android5.1系統(tǒng)。板載WiFi,藍(lán)牙4.0,HDMI2.0 等實用功能。
Android開發(fā)板可以考慮選擇Firefly開發(fā)板,支持Android、Linux雙系統(tǒng)的,瑞芯微芯片,性能強(qiáng),板子接口多,參考資料也多.。
如果只做軟件開發(fā)的話,建議用Android手機(jī)畢竟很多東西都集成了
如果要涉及到相關(guān)硬件的開發(fā)的話,要求不高的話淘寶上買個ARM11的開發(fā)板基本都能~但速度慢啊~