测试提了几个bug

1、系统语言默认设置成中文,否则时间控件显示的内容有问题
2、关闭10分钟不操作自动休眠功能
3、默认关闭虚拟键盘,目的在文本控件点击后,虚拟键盘就会在右下角显示出来,导致物理键盘的小键盘的回车键无效


Android系统修改默认语言为中文
对于Android系统修改默认语言的方法,各个版本的系统方法都差不多一致,至少我在Android5.1和Android9.0使用都成功,具体方法如下:

在build/target/product/full_base.mk中
修改PRODUCT_LOCALES := zh_CN 就可以了。

上面修改无效,尝试:

https://blog.csdn.net/victoryckl/article/details/7969433

.修改build/tools/buildinfo.sh:

echo "persist.sys.language=zh"

echo "persist.sys.country=CN"

echo "persist.sys.localevar="

echo "persist.sys.timezone=Asia/Shanghai"

echo "ro.product.locale.language=zh"

echo "ro.product.locale.region=CN"

关闭10分钟不操作自动休眠功能

修改PowerManagerService.java文件getScreenOffTimeoutLocked()函数

androidx86/frameworks$ vi ./base/services/core/java/com/android/server/power/PowerManagerService.java

直接return mMaximumScreenOffTimeoutFromDeviceAdmin;

默认关闭虚拟键盘

lzm@compilere:~/workspace/android-x86/androidx86/frameworks/base/services/core/java/com/android/server$ grep -rn "keyboardPresence" *                               
policy/PhoneWindowManager.java:2662:    public void adjustConfigurationLw(Configuration config, int keyboardPresence,
policy/PhoneWindowManager.java:2664:        mHaveBuiltInKeyboard = (keyboardPresence & PRESENCE_INTERNAL) != 0;
policy/PhoneWindowManager.java:2670:                || (keyboardPresence == PRESENCE_INTERNAL
wm/DisplayContent.java:1245:        int keyboardPresence = 0;
wm/DisplayContent.java:1278:                    keyboardPresence |= presenceFlag;

修改wm/DisplayContent.java:1278:                    keyboardPresence |= presenceFlag;

//if (device.getKeyboardType() == InputDevice.KEYBOARD_TYPE_ALPHABETIC) {
if (1) {
     config.keyboard = Configuration.KEYBOARD_QWERTY;
     keyboardPresence |= presenceFlag;
}

增加自带应用

build/core/Makefile:34: error: Prebuilt apk found in PRODUCT_COPY_FILES: vendor/evideo/common/priv-app/google_inputMethod.apk:system/priv-app/google_inputMethod.apk, use BUILD_PREBUILT instead!.
15:20:59 ckati failed with: exit status 1

vi build/core/Makefile
#Tommy Delete  删除如下代码
#define check-product-copy-files
#$(if $(filter %.apk, $(1)),$(error
#    Prebuilt apk found in PRODUCT_COPY_FILES: $(1), use BUILD_PREBUILT #instead!))
#endef

增加版本信息:

build/make/tools/buildinfo.sh增加:

echo "ro.product.version=1.0.0"

lzm@compilere:~/workspace/android-x86/androidx86$ cat gen.sh
#!/bin/bash

FIRMWARE_VERSION="1.0.0"

sed -i "s/ro.product.version=.*/ro.product.version=$FIRMWARE_VERSION\"/g" \
        build/make/tools/buildinfo.sh

ROOT_DIR=$(pwd)

echo "cp platform signature"
cp -a $ROOT_DIR/vendor/evideo/emt100t/security/platform.* $ROOT_DIR/build/target/product/security/

. build/envsetup.sh
lunch android_x86_64-userdebug
make -j32 iso_img

机器绑定网卡

修改 device/generic/common/init.sh

function init_evideo()
{
    case "$(cat /sys/class/net/wifi_eth/address)" in
        64:00:6a:00:29:ac|a4:1f:72:5f:6b:07|a4:1f:73:5f:6f:0e)
            ;;
         *)
            reboot
            ;;
    esac
}

do_init添加调用函数

    修改小键盘回车与主键盘回车键值一样

diff --git a/frameworks/base/data/keyboards/Generic.kl b/frameworks/base/data/keyboards/Generic.kl
index f10ba96..e13305c 100644
--- a/frameworks/base/data/keyboards/Generic.kl
+++ b/frameworks/base/data/keyboards/Generic.kl

@@ -115,7 +115,8 @@ key 92    HENKAN
  key 93    KATAKANA_HIRAGANA
  key 94    MUHENKAN
  key 95    NUMPAD_COMMA
-key 96    NUMPAD_ENTER
+# modify by songyoulin
+key 96    ENTER
  key 97    CTRL_RIGHT
  key 98    NUMPAD_DIVIDE
  key 99    SYSRQ

替换默认输入法为google拼音

参考:https://www.cnblogs.com/muhuacat/p/7406112.html

diff --git a/RK3288_5.1/frameworks/base/packages/SettingsProvider/res/values/defaults.xml b/RK3288_5.1/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
index a1e900a..6eebebb 100644
--- a/RK3288_5.1/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
+++ b/RK3288_5.1/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
@@ -86,7 +86,7 @@
      <string name="def_wireless_charging_started_sound" translatable="false">/system/media/audio/ui/WirelessChargingStarted.ogg</string>
     
      <!-- add by lyx -->
-    <string name="config_default_input_method" translatable="false">com.sohu.inputmethod.sogou/.SogouIME</string>
+    <string name="config_default_input_method" translatable="false">com.google.android.inputmethod.pinyin/.PinyinIME</string>

替换默认输入法为google拼音不能用

找了个x86版本的,主要是lib底下要是x86的库

vmware安装时候启动进入不android界面

grub界面,按e修改参数

移动光标“ quiet ”参数替换为“ nomodeset xforcevesa

永久修改:

grub选项进入debug

vi /grub/menu.lst

https://www.android-x86.org/documentation

android x86 固件定制的更多相关文章

  1. Android系统固件定制方式

    target_product.mkAndroid系统在构建关于某种产品的固件时,一般会根据特定于该产品的具体target_product.mk来配置生成整个Android系统./target_prod ...

  2. 调试 Android* x86 应用程序的方法以及要使用的工具

    作者:Xiaodong Wang 1.简单介绍 众所周知,Android* 开发者头顶很多称呼:设计员.程序员等,而且一般会不可避免地被称为故障检修工. 代码中的错误无法避免.因此不管您是否一開始就造 ...

  3. ubuntu下安装RemixOS双系统(Android x86)

    这篇文章主要讲在怎样在ubuntu下安装RemixOS pc版(Android x86版本号),下面两种做法的思路都适合安装不论什么版本号的Android x86版本号到ubuntu系统上,仅仅须要改 ...

  4. Eclipse连接VirtualBox中的Android x86

    Android x86 Alt+F1打开命令行,命令netcfg查看当前ip,记住,然后Alt+F7回界面. Eclipse-Window-Preferences-Android-DDMS-Use A ...

  5. Android 给应用定制皮肤

    Android 给应用定制皮肤 导读:皮肤也就是相关的资源文件单独放置在某个工程中,一种皮肤一个工程文件.一个工程包括N多的资源文件,多个工程间资源的关系是,文件名,资源ID等完全一样. 在实现程序功 ...

  6. 使用android x86进行android应用开发.

    首发论坛 安卓巴士.id:android_bin 一.必备工具: 1.虚拟机软件(本文使用virtual Box为例), 2.android x86镜像,下载地址http://www.android- ...

  7. 深入浅出 - Android系统移植与平台开发(十)- Android编译系统与定制Android平台系统(瘋耔修改篇二)

    第四章.Android编译系统与定制Android平台系统 4.1Android编译系统 Android的源码由几十万个文件构成,这些文件之间有的相互依赖,有的又相互独立,它们按功能或类型又被放到不同 ...

  8. 【转】How to Start Intel Hardware-assisted Virtualization (hypervisor) on Linux to Speed-up Intel Android x86 Emulator

    [转]How to Start Intel Hardware-assisted Virtualization (hypervisor) on Linux to Speed-up Intel Andro ...

  9. How to build ffmpeg with hardware accelerated codecs for Android x86

    In order to build a complete ffmpeg with hardware acceleration for Intel platform (XXX lake + Atom), ...

随机推荐

  1. APS应用案例|纽威阀门实现高效排产

    企业背景: 苏州纽威阀门股份有限公司(下文简称:纽威阀门)成立于1997年,总部设在江苏苏州.自成立以来一直致力于工业阀门的研发与制造,以为客户提供全套工业阀门解决方案为目标.纽威阀门通过企业的努力发 ...

  2. 通过windowmanager在camera界面上显示内容

    Window与WindowManager机制https://www.jastrelax.com/android/2018-03-08-android-window/ [Android开发艺术探索阅读笔 ...

  3. H3C FAT AP

  4. 不用虚拟机直接在线用的 Linux,统统都在这里!

    玩过 Linux 的同学,几乎都用过虚拟机!然而,你们肯定不晓得?不用装虚拟机,也有体验 Linux 的办法.下面一起来看看吧,到底如何不用虚拟机,照样能玩 Linux. 其实方法很简单,你只需要拥有 ...

  5. CodeForces - 1159B

    题目链接:https://vjudge.net/problem/CodeForces-1159B 题目意思:任选选两个元素,分别为a[i],a[j]. 问 都满足K*| i -  j | <= ...

  6. Codeforces Round #601 (Div. 2) E2. Send Boxes to Alice (Hard Version)

    Codeforces Round #601 (Div. 2) E2. Send Boxes to Alice (Hard Version) N个盒子,每个盒子有a[i]块巧克力,每次操作可以将盒子中的 ...

  7. ubuntu坑(持续更新~)

    0.you should not install packages from any repository that represents a different system version to ...

  8. 浅析前端BFC布局

    一.常见定位方案 二.BFC 概念 BFC 即 Block Formatting Contexts (块级格式化上下文),它属于上述定位方案的普通流. 它是一个独立的渲染区域,只有Block-leve ...

  9. stm32中的型号对比——为什么很少用STM32F2,F3?

    源自网络 我觉得有三点: 1. F2属于加强版的F1,内核还是cortex M3,只是主频提高到了120MHz(F1是72MHz),但是这点提升没有实质性意义,性能比不上 2. F3是F4的削弱版,一 ...

  10. vue 命名路由

    有时候,通过一个名称来标识一个路由显得更方便一些,特别是在链接一个路由,或者是执行一些跳转的时候.你可以在创建 Router 实例的时候,在 routes 配置中给某个路由设置名称. const ro ...