講解:RK3399 Android應用開發
本文硬件平臺以飛凌嵌入式OK3399-C開發板為基礎進行講解,其它RK3399產品,由于各個廠家設置不同會有所差異,請參考使用。本文檔主要講解如何建立Android應用開發環境,
包括Android SDK和Android studio集成開發環境的下載及安裝,以及如何使用飛凌RK3399開發板作為真機調試程序,非常適合Android初學者學習和參考。
Android應用程序開發
一、建立Android應用開發環境
1、下載并安裝JDK(Java SE Development Kit)
由于Android應用代碼都是用Java編寫的,因此需要先在Windows上安裝JDK,JDK可按以下方法下載:
訪問網站http://www.oracle.com/technetwork/java/javase/downloads/index.html,在頁面中點擊JDK,推薦安裝Java8。
點擊“Accept License Agreement”根據windows版本選擇exe安裝程序。您也可以在用戶資料資料工具目錄找到飛凌提供文件。
下載完成后,雙擊安裝程序,根據向導的提示完成安裝即可。
安裝完成后,需要將JDK命令添加到Path環境變量中,通過下面的方法將JDK命令所在的路徑添加到Path環境變量中:
1)右擊“我的電腦”- >屬性,再選擇左邊導航的“高級系統設置”選項。
2)點擊右下角的“環境變量”選項。
3)在“系統變量”中,找到Path環境變量,雙擊它,根據實際安裝路徑設置java環境變量,默認安裝時追加以下內容“C:\Program Files\Java\jdk1.8.0_211\bin”
4)點擊“確定”完成環境變量設置。
5) 檢查安裝是否成功
打開命令提示符工具,輸入javac -version
正確顯示Java版本即表示安裝成功。
2、安裝android studio
Android Studio是Google于2013 I/O大會針對Android開發推出的新的開發工具,國內可在http://www.android-studio.org/進行下載安裝。建議下載3.1.2版本。
下載完成后按照提示進行安裝即可。安裝完成后將出現下圖所示:
選擇“Do not import settings”
選擇“Cancel”取消。
點擊“next”進行下一步
這里選擇“custom”。
根據個人喜好選擇UI主題
根據實際情況選擇Android SDK的安裝路徑
選擇模擬器的內存大小。
點擊“Finish”。
等待安裝完成,點擊“Finish”。
3、創建helloworld工程
1. 選擇“start a new android studio project”
2. 修改項目名稱
3. 選擇最低支持的SDK版本
4. 選擇Empty Activity
點擊“Next”
點擊“Finish”
初次使用時會下載Gradle等工具,請耐心等待。
5. 安裝android 9.0 SDK
點擊“File”->“settings”搜索SDK打開下圖所示界面:
勾選“API28”點擊“OK”進行安裝。
6. 修改build.gradle
將該文件中所有的29修改為28,點擊“Try Again”
7. 編譯
點擊“build”->“Make Project”重新編譯。
8. 運行
編譯完成后,將OTG線鏈接到PC的USB接口中,點擊菜單欄中的綠色三角形圖標。
點擊“OK”,稍等一會程序即在開發板上運行起來。
二、Apk platform簽名
Android平臺中SELinux將App劃分為三種,包括沒有platform簽名和系統權限的untrusted_app,擁有platform簽名沒有系統權限的platform_app,和擁有platform簽名和系統權限的system_app。本節,將介紹如何給apk簽名獲得system權限。
1. 制作簽名文件
將Android系統中build/target/product/security/platform.x509.pem以及build/target/product/security/platform.pk8拷貝到windows中。
打開命令行窗口執行:
openssl pkcs8 -in platform.pk8 -inform DER -outform PEM -out shared.priv.pem -nocrypt
openssl pkcs12 -export -in platform.x509.pem -inkey shared.priv.pem -out shared.pk12 -name androiddebugkey
輸入密碼:android
keytool -importkeystore -deststorepass android -destkeypass android -destkeystore debug.keystore -srckeystore shared.pk12 -srcstoretype PKCS12 -srcstorepass android -alias androiddebugkey
其中key-alias以及password您可以根據需求修改為其它內容。將簽名文件debug.keystore文件保存到您的常用目錄中。
注意:如果您的windows系統中沒有openssl命令,請前往http://slproweb.com/products/Win32OpenSSL.html 下載安裝,并設置環境變量。
2. 設置andorid studio
打開任意android studio工程,在AndroidManifest.xml中添加共享UID例如:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.forlinx.serialporttest"
android:sharedUserId="android.uid.system" >
點擊“File”->“project structure”:
添加debug版本和release版本的簽名配置,并點擊“build types”。
如圖設置對應版本的簽名配置。
點擊android studio的運行按鈕,啟動app。在串口中輸入ps -AZ
確認你的app是否已經成為system_app。
三、系統預裝Apk的方法
1. 在android系統中新建目錄:
mkdir packages/apps/serialporttest
將需要預裝的apk(無需簽名)拷貝到目錄中以serialporttest.apk為例:
cp serialporttest.apk packages/apps/serialporttest
2. 在packages/apps/serialporttest新建Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := serialporttest
LOCAL_SRC_FILES := serialporttest.apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := .apk
LOCAL_BUILT_MODULE_STEM := package.apk
LOCAL_CERTIFICATE := platform
LOCAL_DEX_PREOPT := false
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
3. 同時修改device/rockchip/rk3399/device.mk添加
PRODUCT_PACKAGES += \
serialporttest
4. 重新編譯鏡像。
四、App獲取root權限的方法
飛凌RK3399平臺支持app調用“su”獲取root權限,默認情況下該功能為未啟用狀態,啟用方法如下:
1、打開開發者選項
打開設置,選擇“關于平板電腦”選項,連續點擊“版本號”多次,即可進入開發者選項。
2、打開root授權選項
3、重啟系統
4、App獲取root權限測試
在app中可以使用類似如下代碼獲取root權限:
Process p = Runtime.getRuntime().exec("su");
相關產品 >
-
FET3399-C核心板
飛凌RK3399安卓高性能核心板采用 采用六核Rockchip RK3399芯片,雙Cortex-A72大核+四Cortex-A53小核結構,對整數、浮點、內存等作了大幅優化,在整體性能、功耗及核心面積三個方面提升。以下將對瑞芯微芯片RK3399參數,RK3399核心板方案及其性能做具體介紹。如您對飛凌RK3399系列核心板有興趣,歡迎咨詢了解。
了解詳情 -
OK3399-C開發板
飛凌嵌入式RK3399安卓開發板主芯片采用高性能六核CPU Rockchip RK3399,GPU采用Mail-T860四核 GPU,RK3399作為目RK產品線中低功耗、高性能的代表,可滿足人臉識別設備、機器人、無人機、IoT物聯網領域應用。飛凌RK3399開發板在整體性能、功耗及核心面積做了大幅度優化,更加滿足工業設計需求。飛凌RK3399開發板為進一步減少用戶二次開發難度,開放了底板原理圖,并提供了RK3399用戶手冊、芯片手冊,加上優質的技術服務,讓您的方案從構思到上市時間縮短。