当前位置: 首页 > news >正文

Android 8.1 相关修改

       一些常用修改,做个记录,为了节约时间和防止踩坑。

一、修改默认中文
        修改位置:

build\make\target\product\full_base.mk
        修改内容:

# Put en_US first in the list, so make it default.
PRODUCT_LOCALES := zh_CN
注意: 如果修改无效,请使用find ./ -name "*.mk" | xargs grep "PRODUCT_LOCALES"进行全局搜索,找一找是否有其它位置会覆盖修改内容

二、修改默认时区
      修改位置:

device\rockchip\rk3326\device-common.mk
        修改内容:

persist.sys.timezone = Asia/Shanghai
注意: 如果修改无效,请使用find ./ -name "*.mk" | xargs grep "persist.sys.timezone"进行全局搜索,找一找是否有其它位置会覆盖修改内容 

三、修改永不息屏
        方法一(可能不生效):

                修改位置:

device\rockchip\rk3326\device-common.mk
                修改内容 :

ro.rk.screenoff_time=60000
        方法二(可能不生效):

                修改位置:

frameworks/base/packages/SettingsProvider/res/values/defaults.xml
                修改内容:

<integer name="def_screen_off_timeout">60000</integer>
        方法三(我生效的位置):

                修改位置:

device\rockchip\rk3326\overlay\frameworks\base\packages\SettingsProvider\res\values\defaults.xml
                修改内容:

<integer name="def_screen_off_timeout">60000</integer>
        网上查了很多办法,也调试了很多地方,方法三的修改最终生效,应该是数据覆盖的原因吧。

四、修改最大音量级别和默认音量级别
        1、最大音量级别修改位置:

framework/base/services/core/java/com/android/server/audio/AudioService.java
         最大音量级别修改内容:在AudioService.java文件中的MAX_STREAM_VOLUME中,将数值修改为100,分100级,每次调1级。

   /** Maximum volume index values for audio streams */
    private static int[] MAX_STREAM_VOLUME = new int[] {
        5,  // STREAM_VOICE_CALL
        7,  // STREAM_SYSTEM  
        7,  // STREAM_RING
        15, // STREAM_MUSIC
        7,  // STREAM_ALARM
        7,  // STREAM_NOTIFICATION
        15, // STREAM_BLUETOOTH_SCO
        7,  // STREAM_SYSTEM_ENFORCED
        15, // STREAM_DTMF
        15, // STREAM_TTS
        15  // STREAM_ACCESSIBILITY
    };
         2、默认音量级别修改位置:

frameworks/base/media/java/android/media/AudioSystem.java 
        默认音量级别修改内容:在AudioSystem.java文件中的DEFAULT_STREAM_VOLUME中,修改数值,该数值即为默认音量

    public static int[] DEFAULT_STREAM_VOLUME = new int[] {
        4,  // STREAM_VOICE_CALL
        7,  // STREAM_SYSTEM
        5,  // STREAM_RING
        5, // STREAM_MUSIC
        6,  // STREAM_ALARM
        5,  // STREAM_NOTIFICATION
        7,  // STREAM_BLUETOOTH_SCO
        7,  // STREAM_SYSTEM_ENFORCED
        5, // STREAM_DTMF
        5, // STREAM_TTS
        5, // STREAM_ACCESSIBILITY
    };
五、隐藏顶部状态栏电量图标
        修改位置:

framework/base/SystemUI/src/com/android/systemui/BatteryMeterView.java
        修改内容:

六、修改开机logo
        修改位置:

kernel\logo.bmp
kernel\logo_kernel.bmp
        修改内容:更换logo.bmp和logo_kernel.bmp这两张图即可,logo必须是bmp图,注意图片分辨率不要超出屏幕分辨率

七、修改开机动画
         修改位置:

device/rockchip/common/BoardConfig.mk
device/rockchip/common/bootshutdown/bootshutdown.mk
device/rockchip/common/bootshutdown/bootanimation.zip
device/rockchip/common/bootshutdown/shutdownanimation.zip
        修改内容: 

                1、将 BoardConfig.mk 中的 BOOT_SHUTDOWN_ANIMATION_RINGING 置为 true 

                2、RK已经帮我们写好了bootshutdown.mk文件,其实就是文件拷贝,内容如下

CUR_PATH := device/rockchip/common/bootshutdown
 
HAVE_BOOT_ANIMATION := $(shell test -f $(CUR_PATH)/bootanimation.zip && echo yes)
HAVE_SHUTDOWN_ANIMATION := $(shell test -f $(CUR_PATH)/shutdownanimation.zip && echo yes)
 
ifeq ($(HAVE_BOOT_ANIMATION), yes)
PRODUCT_COPY_FILES += $(CUR_PATH)/bootanimation.zip:$(TARGET_COPY_OUT_OEM)/media/bootanimation.zip
endif
ifeq ($(HAVE_SHUTDOWN_ANIMATION), yes)
PRODUCT_COPY_FILES += $(CUR_PATH)/shutdownanimation.zip:$(TARGET_COPY_OUT_OEM)/media/shutdownanimation.zip
endif
                 3、我们只需把开机动画bootanimation.zip和关机动画shutdownanimation.zip放到device/rockchip/common/bootshutdown/路径下即可

        制作 bootanimation.zip:

                1、bootanimation.zip包含part0文件夹和desc.txt,也可能包含part0、part1,我这里只用了一个,其目录如下 

                2、part0文件夹中放置动画图片,注意动画图片分辨率不要超过屏幕分辨率

                3、desc.txt中第一行1024 600 9,其中1024 600代表像素,即1024*600,9代表每秒钟播9张图片;第二行p 0 0 part0,p固定开头,第一个0为重复播放次数,0代表无限播放,如果为3代表播放三次,第二个0代表的是前后两帧之间间隔时间/帧数;最后的part0代表动画图文件夹

                4、同时选中part0和desc.txt,鼠标右击,选择"添加到压缩文件",压缩文件格式选择”ZIP“,压缩方式选择”存储“。压缩完成后打开看下,里面不要有bootanimation文件夹

注意:desc.txt内容写完,鼠标放到最后一行内容最后面,回车一下,然后在保存文件,否则设备无法解析,这是个巨坑!!!

八、user/userdebug版本下编译内容区分
        目的:只需在userdebug版本下编译进某些应用,比如产测apk,user版本下不需要编译进去

        修改位置:

build\target\product\core.mk
        修改内容:

ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
PRODUCT_PACKAGES += \
    DeviceTest
endif
        其中ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))代表DeviceTest这个应用在userdebug或者eng版本下才会编译进来,user版本下不会编译进来

        如果只在user版本下编译进来,则修改成ifneq (,$(filter user,$(TARGET_BUILD_VARIANT)))即可

九、修改固件包版本号
        修改位置:

device\rockchip\rk3326\device-common.mk
        修改内容:

PRODUCT_PROPERTY_OVERRIDES += \
    ro.product.version = 0.0.3 \
    ro.product.ota.host = www.rockchip.com:2300
        其中ro.product.version = 0.0.3就是版本号,可通过adb shell getprop查看 

十、开机时间优化
     

  1、配置32位系统和系统裁剪,请参考以下链接。精简版固件包只有800多M

Rockchip Android平台内存优化及系统裁剪_build_with_go_opt-CSDN博客

Rockchip PX30/RK3326 Android开机时间优化_android rk356x开机优化-CSDN博客

        2、 BOOT TIMEOUT

        按照第1步精简系统后,使用原生Launcher和SystemUI,系统开机时间只有15s。后来集成第三方Launcher+第三方SystemUI+其它应用,共计200多M,集成到系统中开机时间达到了46s,明显感觉不对。于是使用Logcat抓日志,果然有发现问题。

         在日志中有发现BOOT TIMEOUT......超时了?百度了下,找到了解决办法:

        修改位置:

frameworks\base\core\res\res\values\config.xml
         修改内容:

<!-- True if WallpaperService is enabled -->
<bool name="config_enableWallpaperService">false</bool>
 修改后,开机时间由46s变成21s,解决问题。
————————————————

http://www.lryc.cn/news/290383.html

相关文章:

  • EG-2121CA (晶体振荡器 低抖动表面声波(SAW)振荡器)
  • Django知识随笔
  • Facebook 广告帐户:多账号运营如何防止封号?
  • 酷开会员 | 用酷开系统点亮多彩休闲时刻
  • 分配土地(100%用例)C卷(JavaPythonC++Node.jsC语言)
  • 电源的纹波
  • 85.网游逆向分析与插件开发-物品使用-物品使用的逆向分析与C++代码的封装
  • JVM系列——垃圾收集器
  • 那些年与指针的情仇(二)---二级指针指针与数组的那点事函数指针
  • APPCRASH 文件管理器不停重启问题记录 (最后reinstall解决)以及重装后到底会怎样
  • 导出excel功能,前端的解决方案
  • 【lesson24】MySQL索引的理解
  • Oracle篇—分区索引的重建和管理(第三篇,总共五篇)
  • 前端大厂面试题探索编辑部——第一期
  • 图扑 HT UI 5.0 全新升级,开箱即用!
  • 数据结构----链表介绍、模拟实现链表、链表的使用
  • 微信小程序如何控制元素的显示和隐藏
  • 解决ssh: connect to host github.com port 22: Connection timed out
  • idea 创建 spring boot
  • 【智能家居入门之微信小程序控制下位机】(STM32、ONENET云平台、微信小程序、HTTP协议)
  • 07.领域驱动设计:了解3种常见微服务架构模型的对比和分析
  • 设计模式——模板方法模式(Template Method Pattern)
  • 07. STP的基本配置
  • oracle分区范围修改与数据迁移处理
  • 回归预测 | Matlab实现CPO-LSSVM【24年新算法】冠豪猪优化最小二乘支持向量机多变量回归预测
  • SeaTunnel Web安装 一把成
  • 对话泛能网程路:能源产业互联网,行至中程
  • Doris简介及单机部署(超详细)
  • Pytest 识别case规则
  • gorm+mysql查询/修改json列相关操作汇总