Android4.4真机移植过程笔记(二)

embedded/2024/11/13 9:21:47/

5、盘符挂载

先定义overlay机制路径,后面storage_list.xml要用到:
在这里插入图片描述
在路径:
rk3188_android4.4.1/device/rockchip/OK1000/overlay/frameworks/base/core/res/res/xml/定义好,注意名字要和emmc的代码片段(往下面看)对应:
在这里插入图片描述

再看emmc片段,名字和上面一一对应:
在这里插入图片描述

看看下面的映射关系:
在这里插入图片描述

把配置好的脚本拷贝相应的位置:
在这里插入图片描述

以上的是Android4.4,主要修改就是storage.list和emmc文件;与Android4.2有很大不同:
在Android4.2中把两个文件vold.fstab
在这里插入图片描述
和emmc.rc
在这里插入图片描述

合并成4.4的一个emmc文件了:
在这里插入图片描述
其他地方变动不大。

最后效果图:
在这里插入图片描述

备注:
Android4.4和4.2分区表parameter的配置也不一样,4.4中多了一个metadata参数,如果不配置这个,系统烧录后会起不来,metadata具体什么用目前不是很清楚,网上也没有查到相应的资料!

参考网址:
http://www.cnblogs.com/sky-zhang/p/3403728.html
http://www.cnblogs.com/bastard/archive/2012/12/03/2799298.html

6、关机、重启对话框

在这里插入图片描述
改变配置文件:
rk3188_android4.4.1/device/rockchip/OK1000/overlay/frameworks/base/core/res/res/values-sw720dp/config.xml
在这里插入图片描述
种瓜得瓜,种豆得豆:
在这里插入图片描述
但是这还不是我们想要的效果,没有reboot功能,继续:
如果你要完成自己很好的定制,你必须的了解Android的Overlay机制,这里有一篇不错的博文:http://www.cnblogs.com/galensphang/p/3826642.html

下面是部分资源:

在这里插入图片描述

代码:
rk3188_android4.4.1/frameworks/base/services/java/com/android/server/power/ShutdownThread.java
在这里插入图片描述

添加相应的变量(注意:你应该很清楚,那些资源该加,那些不该加,应该怎么加!):
rk3188_android4.4.1/frameworks/base/core/res/res/values/symbols.xml
在这里插入图片描述

万事俱备,烧录运行:
在这里插入图片描述

天有不测风云:
不得了,报错,重启…(其实不是shutdown.xml找不到,而是他里面引用的图片资源没有找到,当时我只是放在drawable-mdpi目录下)
百思不能其解,搞啊搞,搞啊搞…搞了很久,Google很久,终于获得点蛛丝马迹,最终来到了这里:
rk3188_android4.4.1/build/target/product/full_base.mk
在这里插入图片描述

添加了ldpi和mdpi,具体为什么要添加,你应该要清楚,这里不做任何解释;而变量:
PRODUCT_AAPT_CONFIG和PRODUCT_AAPT_PREF_CONFIG这里有相关的解释,仅供参考:

在这里插入图片描述

而Android4.2中不是在这里配置的,是在:mini.mk;

功夫不负有心人:
在这里插入图片描述

觉得本文对你有用,麻烦点赞或关注或收藏,你的肯定是我创作的无限动力,谢谢!!!


http://www.ppmy.cn/embedded/34505.html

相关文章

大模型起飞,科大讯飞2023年表现不俗,营收利润双增长

【科技明说 | 科技热点关注】 据最新公开信息显示,科大讯飞2024年4月22日发布了2023年度业绩报告,公司2023年实现营业收入196.5亿元,较上年增长4.41%。 实现归母净利润6.57亿元,较上年增长17.12%。 可是,科…

Yarn的安装及使用

YARN的安装及使用主要分为以下几个步骤: 一、安装YARN YARN的安装依赖于Node.js的运行环境,因此需要先安装Node.js。 下载并安装Node.js:可以从Node.js官网下载并安装适合你操作系统的Node.js安装包。安装YARN: 在Windows系统…

代码随想录算法训练营第60天| 647. 回文子串*、 516.最长回文子序列*

647. 回文子串* 力扣题目链接 代码 示例代码 class Solution { public:int countSubstrings(string s) {vector<vector<bool>> dp(s.size(), vector<bool>(s.size(), false));int result 0;for (int i s.size() - 1; i > 0; i--) { // 注意遍历顺序…

1700java进销存管理系统Myeclipse开发sqlserver数据库web结构java编程计算机网页项目

一、源码特点 java web进销存管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为sqlser…

不同屏幕尺寸下显示不同的图片

使用<picture>元素实现 ​​​​​​​<picture> 元素用于包裹一组 <source> 元素和一个 <img> 元素&#xff0c;它们提供了多个图片源供浏览器选择。<source> 元素包含了不同尺寸或者分辨率的图片源&#xff0c;其中的 srcset 属性指定了图片的…

未授权访问

未授权访问是系统对用户限制不全&#xff0c;或者无限制&#xff0c;可以让任意用户或者限制访问用户&#xff0c;访问到需要权限认证的地址。未授权访问通常是会泄露用户信息&#xff0c;系统信息。某些服务和系统中&#xff0c;未授权访问还可以执行系统命令&#xff0c;操作…

第23章 微内核架构软件测试(下午题)

一、微内核架构概述 &#xff08;一&#xff09;概念 1、微内核架构 微内核&#xff1a;精简的内核 宏内核&#xff1a;中央集权控制中心 核心系统 能运行的最小模块插件模块 专业处理&#xff0c;额外特性的独立组件增加/扩展核心系统的业务逻辑能力连接方式 OSGI、消息机…

Python语言例题集(013)

#!/usr/bin/python3 #建立循环链表。 class Node(): def init(self,dataNone): self.datadata self.nextNone n1Node(5) n2Node(15) n3Node(25) n1.nextn2 n2.nextn3 n3.nextn1 ptrn1 counter1 while counter<6: print(ptr.data) ptrptr.next counter1