講解:RK3399 Android應(yīng)用開發(fā)

原創(chuàng) 作者 RK3399 2020-12-10 11:42:00 RK3399 RK3399 Android

本文硬件平臺以飛凌嵌入式OK3399-C開發(fā)板為基礎(chǔ)進行講解,其它RK3399產(chǎn)品,由于各個廠家設(shè)置不同會有所差異,請參考使用。本文檔主要講解如何建立Android應(yīng)用開發(fā)環(huán)境

包括Android SDK和Android studio集成開發(fā)環(huán)境的下載及安裝,以及如何使用飛凌RK3399開發(fā)板作為真機調(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,在頁面中點擊JDK,推薦安裝Java8。

在頁面中點擊JDK,推薦安裝Java8 

 

根據(jù)windows版本選擇exe安裝程序 

點擊“Accept License Agreement”根據(jù)windows版本選擇exe安裝程序。您也可以在用戶資料資料工具目錄找到飛凌提供文件。

下載完成后,雙擊安裝程序,根據(jù)向?qū)У奶崾就瓿砂惭b即可。

安裝完成后,需要將JDK命令添加到Path環(huán)境變量中,通過下面的方法將JDK命令所在的路徑添加到Path環(huán)境變量中:

1)右擊“我的電腦”- >屬性,再選擇左邊導(dǎo)航的“高級系統(tǒng)設(shè)置”選項。

2)點擊右下角的“環(huán)境變量”選項。

3)在“系統(tǒng)變量”中,找到Path環(huán)境變量,雙擊它,根據(jù)實際安裝路徑設(shè)置java環(huán)境變量,默認安裝時追加以下內(nèi)容“C:\Program Files\Java\jdk1.8.0_211\bin”

4)點擊“確定”完成環(huán)境變量設(shè)置。

高級設(shè)置選擇環(huán)境變量設(shè)置 

完成環(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/進行下載安裝。建議下載3.1.2版本。

下載安裝 

下載完成后按照提示進行安裝即可。安裝完成后將出現(xiàn)下圖所示:

選擇Do not import settings 

選擇“Do not import settings”

選擇Cancel取消 

選擇“Cancel”取消。

點擊下一步 

點擊“next”進行下一步

選擇custom 

這里選擇“custom”。

選擇UI主題 

根據(jù)個人喜好選擇UI主題

擇Android SDK的安裝路徑 

根據(jù)實際情況選擇Android SDK的安裝路徑

選擇模擬器的內(nèi)存大小 

選擇模擬器的內(nèi)存大小。

點擊Finish 

點擊“Finish”。

等待安裝完成 

等待安裝完成,點擊“Finish”。

3、創(chuàng)建helloworld工程

1. 選擇“start a new android studio project”

選擇start a new android studio project 

2. 修改項目名稱

修改項目名稱 

3. 選擇最低支持的SDK版本

選擇最低支持的SDK版本 

4. 選擇Empty Activity

選擇Empty Activity 點NEXT 

點擊“Next”

選擇next 

點擊Finish 

點擊“Finish”

耐心等待 

初次使用時會下載Gradle等工具,請耐心等待。

5. 安裝android 9.0 SDK

點擊“File”->“settings”搜索SDK打開下圖所示界面:

 

勾選“API28”點擊“OK”進行安裝。

點擊Flashing 

6. 修改build.gradle

將該文件中所有的29修改為28,點擊“Try Again”

所有的29修改為28 

7. 編譯

Make Project重新編譯 

點擊“build”->“Make Project”重新編譯。

8. 運行

編譯完成后,將OTG線鏈接到PC的USB接口中,點擊菜單欄中的綠色三角形圖標。

擊菜單欄中的綠色三角 

點擊OK 

點擊“OK”,稍等一會程序即在開發(fā)板上運行起來。

運行成功 

二、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" >

點擊“File”->“project structure”:

 

 

添加debug版本和release版本的簽名配置,并點擊“build types”。

 

 

如圖設(shè)置對應(yīng)版本的簽名配置。

點擊android studio的運行按鈕,啟動app。在串口中輸入ps -AZ

 

確認你的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)限,默認情況下該功能為未啟用狀態(tài),啟用方法如下:

1、打開開發(fā)者選項

 

打開設(shè)置,選擇“關(guān)于平板電腦”選項,連續(xù)點擊“版本號”多次,即可進入開發(fā)者選項。

2、打開root授權(quán)選項

 

3、重啟系統(tǒng)

4、App獲取root權(quán)限測試

在app中可以使用類似如下代碼獲取root權(quán)限:

Process p = Runtime.getRuntime().exec("su");

原創(chuàng):RK3399  2020-12-10 11:42 





相關(guān)產(chǎn)品 >

  • FET3399-C核心板

    飛凌RK3399安卓高性能核心板采用 采用六核Rockchip RK3399芯片,雙Cortex-A72大核+四Cortex-A53小核結(jié)構(gòu),對整數(shù)、浮點、內(nèi)存等作了大幅優(yōu)化,在整體性能、功耗及核心面積三個方面提升。以下將對瑞芯微芯片RK3399參數(shù),RK3399核心板方案及其性能做具體介紹。如您對飛凌RK3399系列核心板有興趣,歡迎咨詢了解。

    了解詳情
    FET3399-C核心板
  • OK3399-C開發(fā)板

    飛凌嵌入式RK3399安卓開發(fā)板主芯片采用高性能六核CPU Rockchip RK3399,GPU采用Mail-T860四核 GPU,RK3399作為目RK產(chǎn)品線中低功耗、高性能的代表,可滿足人臉識別設(shè)備、機器人、無人機、IoT物聯(lián)網(wǎng)領(lǐng)域應(yīng)用。飛凌RK3399開發(fā)板在整體性能、功耗及核心面積做了大幅度優(yōu)化,更加滿足工業(yè)設(shè)計需求。飛凌RK3399開發(fā)板為進一步減少用戶二次開發(fā)難度,開放了底板原理圖,并提供了RK3399用戶手冊、芯片手冊,加上優(yōu)質(zhì)的技術(shù)服務(wù),讓您的方案從構(gòu)思到上市時間縮短。

    了解詳情
    OK3399-C開發(fā)板

推薦閱讀 換一批 換一批