2017年6月,英創公司在ESM6802+10.1"LCD的硬件平臺上成功運行Android 7.1.1原生操作系統。2017年8月,ESM6802 Android 版可以支持GPIO、串口、以太網、U盤。后續將進一步完善對CAN、SPI、I2C、WIFI、4G等接口的支持。
Google公司專門為開發Android應用程序提供了集成開發環境Android Studio,涵蓋了所有Android應用開發相關的功能。Android應用程序主要使用Java語言編寫,要用到開發工具集SDK(Software Development Kit,提供java編譯工具、Android系統API等,可以直接在Android Studio中下載)。當應用程序中要直接訪問硬件,或者需要提高運行效率時,需要將訪問硬件、復雜邏輯部分使用C/C++實現。要在Android Studio中開發編譯C/C++代碼,需要用到工具集NDK(Native Development Kit,提供C/C++編譯工具、API、打包工具等,可直接在Android Studio中下載)。使用NDK可以將C/C++源碼編譯成動態鏈接庫,供Java調用。由于Java語言要調用C/C++函數需要用到JNI(Java Native Interface)技術,這就要求使用NDK開發C/C++時,C/C++源碼要符合JNI規范要求。
圖1 ESM6802 Android版本工作分布圖
為方便Android用戶專注于Android 應用層(Java語言)的開發,英創公司對所支持的硬件接口均提供了符合JNI規范的C/C++動態鏈接庫,用戶只需要加載英創的動態鏈接庫,就可以在純Java語言環境中調用動態鏈接庫中的函數,達到訪問硬件資源的目的。如圖1所示,用戶的工作只是應用層的java程序,英創已完成了其他部分工作。
更詳細的開發過程請參考用戶手冊《Android Studio應用開發簡介》。在此手冊中,詳細介紹了Android Studio的環境搭建,并以Step2_SerialPort為例,介紹了使用Android Studio開發、調試、安裝應用到ESM6802的過程。英創對已支持的硬件接口提供對應的應用程序示例,包括C/C++部分的so文件,供用戶參考。
Android應用開發更詳細的資料請參考開發者網站學習:https://developer.android.google.cn/index.html。
成都英創信息技術有限公司 028-8618 0660