講解:RK3399 Android應(yīng)用開發(fā)
本文硬件平臺以飛凌嵌入式OK3399-C開發(fā)板為基礎(chǔ)進(jìn)行講解,其它RK3399產(chǎn)品,由于各個廠家設(shè)置不同會有所差異,請參考使用。本文檔主要講解如何建立Android應(yīng)用開發(fā)環(huán)境,
包括Android SDK和Android studio集成開發(fā)環(huán)境的下載及安裝,以及如何使用飛凌RK3399開發(fā)板作為真機(jī)調(diào)試程序,非常適合Android初學(xué)者學(xué)習(xí)和參考。
Android應(yīng)用程序開發(fā)
一、建立Android應(yīng)用開發(fā)環(huán)境
1、下載并安裝JDK(Java SE Development Kit)
由于Android應(yīng)用代碼都是用Java編寫的,因此需要先在Windows上安裝JDK,JDK可按以下方法下載:
訪問網(wǎng)站http://www.oracle.com/technetwork/java/javase/downloads/index.html,在頁面中點(diǎn)擊JDK,推薦安裝Java8。
點(diǎn)擊“Accept License Agreement”根據(jù)windows版本選擇exe安裝程序。您也可以在用戶資料資料工具目錄找到飛凌提供文件。
下載完成后,雙擊安裝程序,根據(jù)向?qū)У奶崾就瓿砂惭b即可。
安裝完成后,需要將JDK命令添加到Path環(huán)境變量中,通過下面的方法將JDK命令所在的路徑添加到Path環(huán)境變量中:
1)右擊“我的電腦”- >屬性,再選擇左邊導(dǎo)航的“高級系統(tǒng)設(shè)置”選項(xiàng)。
2)點(diǎn)擊右下角的“環(huán)境變量”選項(xiàng)。
3)在“系統(tǒng)變量”中,找到Path環(huán)境變量,雙擊它,根據(jù)實(shí)際安裝路徑設(shè)置java環(huán)境變量,默認(rèn)安裝時追加以下內(nèi)容“C:\Program Files\Java\jdk1.8.0_211\bin”
4)點(diǎn)擊“確定”完成環(huán)境變量設(shè)置。
5) 檢查安裝是否成功
打開命令提示符工具,輸入javac -version
正確顯示Java版本即表示安裝成功。
2、安裝android studio
Android Studio是Google于2013 I/O大會針對Android開發(fā)推出的新的開發(fā)工具,國內(nèi)可在http://www.android-studio.org/進(jìn)行下載安裝。建議下載3.1.2版本。
下載完成后按照提示進(jìn)行安裝即可。安裝完成后將出現(xiàn)下圖所示:
選擇“Do not import settings”
選擇“Cancel”取消。
點(diǎn)擊“next”進(jìn)行下一步
這里選擇“custom”。
根據(jù)個人喜好選擇UI主題
根據(jù)實(shí)際情況選擇Android SDK的安裝路徑
選擇模擬器的內(nèi)存大小。
點(diǎn)擊“Finish”。
等待安裝完成,點(diǎn)擊“Finish”。
3、創(chuàng)建helloworld工程
1. 選擇“start a new android studio project”
2. 修改項(xiàng)目名稱
3. 選擇最低支持的SDK版本
4. 選擇Empty Activity
點(diǎn)擊“Next”
點(diǎn)擊“Finish”
初次使用時會下載Gradle等工具,請耐心等待。
5. 安裝android 9.0 SDK
點(diǎn)擊“File”->“settings”搜索SDK打開下圖所示界面:
勾選“API28”點(diǎn)擊“OK”進(jìn)行安裝。
6. 修改build.gradle
將該文件中所有的29修改為28,點(diǎn)擊“Try Again”
7. 編譯
點(diǎn)擊“build”->“Make Project”重新編譯。
8. 運(yùn)行
編譯完成后,將OTG線鏈接到PC的USB接口中,點(diǎn)擊菜單欄中的綠色三角形圖標(biāo)。
點(diǎn)擊“OK”,稍等一會程序即在開發(fā)板上運(yùn)行起來。
二、Apk platform簽名
Android平臺中SELinux將App劃分為三種,包括沒有platform簽名和系統(tǒng)權(quán)限的untrusted_app,擁有platform簽名沒有系統(tǒng)權(quán)限的platform_app,和擁有platform簽名和系統(tǒng)權(quán)限的system_app。本節(jié),將介紹如何給apk簽名獲得system權(quán)限。
1. 制作簽名文件
將Android系統(tǒng)中build/target/product/security/platform.x509.pem以及build/target/product/security/platform.pk8拷貝到windows中。
打開命令行窗口執(zhí)行:
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您可以根據(jù)需求修改為其它內(nèi)容。將簽名文件debug.keystore文件保存到您的常用目錄中。
注意:如果您的windows系統(tǒng)中沒有openssl命令,請前往http://slproweb.com/products/Win32OpenSSL.html 下載安裝,并設(shè)置環(huán)境變量。
2. 設(shè)置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" >
點(diǎn)擊“File”->“project structure”:
添加debug版本和release版本的簽名配置,并點(diǎn)擊“build types”。
如圖設(shè)置對應(yīng)版本的簽名配置。
點(diǎn)擊android studio的運(yùn)行按鈕,啟動app。在串口中輸入ps -AZ
確認(rèn)你的app是否已經(jīng)成為system_app。
三、系統(tǒng)預(yù)裝Apk的方法
1. 在android系統(tǒng)中新建目錄:
mkdir packages/apps/serialporttest
將需要預(yù)裝的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權(quán)限的方法
飛凌RK3399平臺支持app調(diào)用“su”獲取root權(quán)限,默認(rèn)情況下該功能為未啟用狀態(tài),啟用方法如下:
1、打開開發(fā)者選項(xiàng)
打開設(shè)置,選擇“關(guān)于平板電腦”選項(xiàng),連續(xù)點(diǎn)擊“版本號”多次,即可進(jìn)入開發(fā)者選項(xiàng)。
2、打開root授權(quán)選項(xiàng)
3、重啟系統(tǒng)
4、App獲取root權(quán)限測試
在app中可以使用類似如下代碼獲取root權(quán)限:
Process p = Runtime.getRuntime().exec("su");
相關(guān)產(chǎn)品 >
-
FET3399-C核心板
飛凌RK3399安卓高性能核心板采用 采用六核Rockchip RK3399芯片,雙Cortex-A72大核+四Cortex-A53小核結(jié)構(gòu),對整數(shù)、浮點(diǎn)、內(nèi)存等作了大幅優(yōu)化,在整體性能、功耗及核心面積三個方面提升。以下將對瑞芯微芯片RK3399參數(shù),RK3399核心板方案及其性能做具體介紹。如您對飛凌RK3399系列核心板有興趣,歡迎咨詢了解。
了解詳情 -
OK3399-C開發(fā)板
飛凌嵌入式RK3399安卓開發(fā)板主芯片采用高性能六核CPU Rockchip RK3399,GPU采用Mail-T860四核 GPU,RK3399作為目RK產(chǎn)品線中低功耗、高性能的代表,可滿足人臉識別設(shè)備、機(jī)器人、無人機(jī)、IoT物聯(lián)網(wǎng)領(lǐng)域應(yīng)用。飛凌RK3399開發(fā)板在整體性能、功耗及核心面積做了大幅度優(yōu)化,更加滿足工業(yè)設(shè)計(jì)需求。飛凌RK3399開發(fā)板為進(jìn)一步減少用戶二次開發(fā)難度,開放了底板原理圖,并提供了RK3399用戶手冊、芯片手冊,加上優(yōu)質(zhì)的技術(shù)服務(wù),讓您的方案從構(gòu)思到上市時間縮短。