前言
RK3568 Android11平臺(tái)自帶Android英文輸入法,本文基于IDO-EVB3568平臺(tái),以百度輸入法為例,介紹安裝和內(nèi)置第三方輸入法的方法。
我司基于RK3568開發(fā)的工控主板,四核A55 2.0G 主頻,支持高達(dá)8GB高速LPDDR4,1T算力NPU ,4K H.265硬解碼,4K HDMI2.0顯示輸出,支持雙通道LVDS/eDP/兩路MIPI DSI 等多種顯示接口,支持3屏異顯。板載2路千兆以太網(wǎng),雙頻WIFI+藍(lán)牙,支持5G或4G通信,支持2路USB3.0和7路USB2.0/SATA3.0,5路串口(UART/RS232/RS485),2路CAN總線。
支持Android11/Debian10/Ubuntu20/Buildroot/麒麟OS/開源鴻蒙等多種操作系統(tǒng)。
開發(fā)板規(guī)格書:IDO-EVB3568-V1 產(chǎn)品手冊(cè)
01 獲取輸入法名稱
在將輸入法內(nèi)置到系統(tǒng)之前,可以通過手動(dòng)安裝的方式,獲取輸入法的包名和類名。
通過adb安裝輸入法apk,并使用ime list命令查看輸入法包名類名:
> adb install baidu_input.apk > adb shellimelist-s com.android.inputmethod.latin/.LatinIME com.baidu.input/.ImeService02 輸入法預(yù)安裝
將輸入法apk文件添加至 device/rockchip/rk356x/rk3568_r/preinstall_del/ 目錄下,編譯后該APK文件將會(huì)預(yù)安裝至系統(tǒng)。
03 環(huán)境變量修改
添加環(huán)境變量def_input_method,指定變量值為輸入法的包名和類名。修改內(nèi)容如下:
--- a/frameworks/base/packages/SettingsProvider/res/values/defaults.xml +++ b/frameworks/base/packages/SettingsProvider/res/values/defaults.xml @@ -246,4 +246,7 @@04 設(shè)置默認(rèn)輸入法0 + + +com.baidu.input/.ImeService
在設(shè)置源碼中,指定DEFAULT_INPUT_METHOD為要設(shè)置的輸入法。修改內(nèi)容如下:
--- a/frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java +++ b/frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java @@ -2319,6+2319,9@@ classDatabaseHelperextendsSQLiteOpenHelper{ try{ stmt = db.compileStatement("INSERT OR IGNORE INTO secure(name,value)" + " VALUES(?,?);"); + + loadStringSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD, + R.string.def_input_method); // Don't do this. The SystemServer will initialize ADB_ENABLED from a // persistent system property instead.05 給輸入法添加默認(rèn)權(quán)限
輸入法一般需要定位、存儲(chǔ)等權(quán)限,可通過預(yù)先設(shè)置輸入法默認(rèn)的權(quán)限,避免輸入法啟動(dòng)時(shí)彈出權(quán)限申請(qǐng)確認(rèn)彈窗。修改內(nèi)容如下:
--- a/frameworks/base/services/--- a/frameworks/base/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java
+++ b/frameworks/base/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java
@@ -527,6+527,9@@ publicfinal classDefaultPermissionGrantPolicy{
String[] calendarSyncAdapterPackages = (syncAdapterPackagesProvider != null) ?
syncAdapterPackagesProvider.getPackages(CalendarContract.AUTHORITY, userId) : null;
+ // baidu input
+ grantPermissionsToPackage(pm, "com.baidu.input", userId, false, true, ALWAYS_LOCATION_PERMISSIONS,STORAGE_PERMISSIONS,PHONE_PERMISSIONS,MICROPHONE_PERMISSIONS,CONTACTS_PERMISSIONS);
+
// Installer
grantSystemFixedPermissionsToSystemPackage(pm,
ArrayUtils.firstOrNull(getKnownPackages(
06 輸入法測(cè)試
可通過adb命令查看系統(tǒng)默認(rèn)輸入法
> adb shellsettings getsecure default_input_method
經(jīng)過以上步驟的系統(tǒng)修改,點(diǎn)擊系統(tǒng)桌面上的編輯框,默認(rèn)調(diào)用的輸入法將會(huì)變更為修改后的輸入法

審核編輯:劉清
-
HDMI
+關(guān)注
關(guān)注
34文章
1899瀏覽量
160511 -
usb
+關(guān)注
關(guān)注
60文章
8440瀏覽量
284475 -
Android系統(tǒng)
+關(guān)注
關(guān)注
0文章
57瀏覽量
14174 -
RK3568
+關(guān)注
關(guān)注
5文章
644瀏覽量
7940
原文標(biāo)題:觸覺智能分享-RK3568 Android11修改默認(rèn)輸入法
文章出處:【微信號(hào):industio,微信公眾號(hào):深圳觸覺智能】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
技術(shù)分享 | RK3568 Android11 如何實(shí)現(xiàn)自啟動(dòng)應(yīng)用
RK3568 Android11編譯環(huán)境搭建及報(bào)錯(cuò)解決指南
【迅為工業(yè)RK3568穩(wěn)定可靠】itop-3568開發(fā)板Linux驅(qū)動(dòng)開發(fā)實(shí)戰(zhàn):RK3568內(nèi)核模塊符號(hào)導(dǎo)出詳解
如何基于開發(fā)板RK3568 Android 11強(qiáng)制所有應(yīng)用橫屏展示
實(shí)戰(zhàn)RK3568性能調(diào)優(yōu):如何利用迅為資料壓榨NPU潛能-在Android系統(tǒng)中使用NPU
技術(shù)分享 | RK3568 Android預(yù)安裝應(yīng)用
天合跟蹤獲得DNV第三方風(fēng)洞測(cè)試審查報(bào)告
Ubuntu系統(tǒng)安裝Docker詳細(xì)攻略,觸覺智能RK3568開發(fā)板演示
一文掌握RK3568開發(fā)板Android13掛載Windows共享目錄
迅為RK3568多個(gè)系統(tǒng)版本并流暢運(yùn)行Android12和11版本
技術(shù)分享 | RK3568編譯第三方驅(qū)動(dòng)
介紹RK3568 Android11安裝和內(nèi)置第三方輸入法
評(píng)論