在RK3399平台 Android7.1 系统预装科大讯飞的TTS、百度输入法,每次系统烧录更新后需要进行相应的设置动作,现将科大讯飞TTS语音包、百度输入法设置为默认选项;时间、允许安装未知来源的应用程序都设置为默认选项。
RK3399平台:九鼎创展的X3399核心板,Android7.1,linux4.4
一、设置默认科大讯飞TTs为默认选项(先要预置APP),做如下修改
1、frameworks中修改
在 frameworks/base/packages/SettingsProvider/res/values/defaults.xml中增加
+++ <string name="default_tts" translatable="false">com.iflytek.speechcloud</string>
</resources>
在 frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java中增加
+++ loadStringSetting(stmt,Settings.Secure.TTS_DEFAULT_SYNTH,R.string.default_tts);
--- a/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
+++ b/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
+ <string name="default_tts" translatable="false">com.iflytek.speechcloud</string>
</resources>
--- a/frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
+++ b/frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
+ loadStringSetting(stmt,Settings.Secure.TTS_DEFAULT_SYNTH,R.string.default_tts);
参考链接:
https://blog.youkuaiyun.com/zjy764219923/article/details/109637611
https://blog.youkuaiyun.com/u011774634/article/details/124609494
科大讯飞3.0安装包
二、设置默认时区
系统会根据persist.sys.timezone这个去设置时区
所以修改persist.sys.timezone=Asia/Shanghai则为中国时区。
修改在device\rockchip\rk3399\rk3399_all\system.prop中添加:
persist.sys.timezone=Asia/Shanghai
若已存在persist.sys.timezone,则将其值修改为:Asia/Shanghai
三、设置百度输入法作为默认输入法
先预置APP,
修改x3399_nougat_industry/device/rockchip/rk3399/device.mk中的
PRODUCT_PACKAGES += \
memtrack.$(TARGET_BOARD_PLATFORM) \
WallpaperPicker \
Launcher3 \
RetailDemo \
baidushurufa_194 //添加的内容,注意在上一行加入续行符 \ 这个名字就是app的名字
1、frameworks中修改
在 frameworks/base/packages/SettingsProvider/res/values/defaults.xml中增加
+++ <string name="def_input_method" translatable="false">com.baidu.input/.ImeService</string>
在 frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java中增加
+++ loadStringSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD,
R.string.def_input_method );
修改frameworks/base/core/java/com/android/internal/inputmethod/InputMethodUtils.java 使能所有默认输入法
--- if (TextUtils.isEmpty(getEnabledInputMethodsStr())) {
+++ if (!TextUtils.isEmpty(getEnabledInputMethodsStr())) {
注释掉frameworks/base/services/core/java/com/android/server/InputMethodManagerService.java中的如下内容
/*if (!resetDefaultEnabledIme) {
boolean enabledImeFound = false;
final List<InputMethodInfo> enabledImes = mSettings.getEnabledInputMethodListLocked();
final int N = enabledImes.size();
for (int i = 0; i < N; ++i) {
final InputMethodInfo imi = enabledImes.get(i);
if (mMethodList.contains(imi)) {
enabledImeFound = true;
break;
}
}
if (!enabledImeFound) {
Slog.i(TAG, "All the enabled IMEs are gone. Reset default enabled IMEs.");
resetDefaultEnabledIme = true;
resetSelectedInputMethodAndSubtypeLocked("");
}
}*/
四、设置允许安装未知来源的应用程序为默认选项
1、frameworks中修改
/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
--- <bool name="def_install_non_market_apps">false</bool>
+++ <bool name="def_install_non_market_apps">true</bool>
重新编译后,烧录测试ok!