自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 资源 (1)
  • 收藏
  • 关注

原创 Android系统开发笔记 - 总目录

引言 本文为了方便自己查阅回顾以往的文章,特出此文章,通过Linux驱动、Android系统、Android Demo等分类进行跳转所有文章;一、Linux驱动篇1、设备树相关[RK3399][Android7.1] 学习笔记 — Linux内核的设备树DTS详解[RK3288][Android7.1] 调试笔记 — 固定CPU频率2、LCD点屏相关[RK3288][Android7.1] 调试笔记 — 点MIPI屏初始化命令详解[RK3288][Android7.1]调试笔记 — LVD

2021-06-16 23:20:29 1026

原创 [Hi3751V350][Android9.0] 调试笔记 --- 添加并设置默认系统字库

Platform: Hi3751V350OS: Android 9.0Kernel: v4.9.127_s5需求:客户要求系统添加某个指定的TTF文件作为系统默认的字库;源码目录:frameworks\base\graphics\java\android\graphics\Typeface.javaframeworks\base\data\fonts\fonts.mkframeworks\base\data\fonts\Android.mkframeworks\base\data

2022-01-25 16:37:13 1196 1

原创 [RK3399][Android7.1] 调试笔记 --- 移除/删除Settings的Preference的三种方法小结

Platform: RK3399-MIDOS: Android 7.1.2Kernel: v4.4.83需求:客户提出需要把①设置-显示-字体大小/显示大小选项,以及②设置-无障碍-字体大小/显示大小选项;如下图所示;

2021-06-28 22:08:01 1615 3

原创 [RK3399][Android7.1] 调试笔记 --- 编译出错FAILED: /bin/bash -c “prebuilts/misc/linux-x86/flex/flex-2.5.39...

Platform: RK3399-MIDOS: Android 7.1.2Kernel: v4.4.83问题:编译时bao

2021-06-16 10:00:27 1159 3

原创 [RK3399][Android7.1] 调试笔记 --- 编译出错missing and no known rule to make it

Platform: RK3399-MIDOS: Android 7.1.2Kernel: v4.4.83问题:

2021-06-11 18:10:56 1484 5

原创 [RK3399][Android7.1] 学习笔记 --- Linux内核的设备树DTS详解

设备树的简介Linux 内核3.X之后,arch/arm/plat-xxx和arch/arm/mach-xxx中,描述板级细节的代码(比如platform_device、i2c_board_info等)被大量取消,取而代之的是设备树,其目录位于arch/arm/boot/dts或者是arch/arm64/boot/dts;设备树的组成设备树由1个dts + 多个dtsi组成,他们经过编译而成的dtb文件就是真正的设备树;dts:一般情况下,一个dts代表公司的具体某一个产品,适用于同一套源码

2021-05-17 23:09:38 2890 1

原创 [Android应用]Android开发基础之服务Service(一、Service的基础知识)

Service简介Service是Android程序中四大基础组件之一,它和Activity一样都是Context的子类,只不过它没有UI界面,是在后台运行的组件。Service是Android中实现程序后台运行的解决方案,它非常适用于去执行那些不需要和用户交互而且还要求长期运行的任务。Service默认并不会运行在子线程中,它也不运行在一个独立的进程中,它同样执行在UI线程中,因此,不要在Service中执行耗时的操作,除非你在Service中创建了子线程来完成耗时操作。Android为什么需要

2021-05-09 23:45:39 551

原创 [Android应用]Android开发基础之Activity的生命周期和启动模式

Activity的生命周期、Activity的启动模式Activity的生命周期本文描述Android中Activity生命周期方法,通过重写生命周期的方法打印对应的Log,分析在一些常见的情况下,分别调用了什么方法,从而总结理解Activity的生命周期;以下是Activity的七种生命周期方法,中文说明如下:生命周期方法 作用 说明 方法后Activity处于什么状态? onCreate 表示 Activity 正在被创建 activity 被创建时调用

2021-05-09 00:12:50 174

原创 [Android应用]Android开发基础之Activity界面的跳转,组件间的数据传递

定义Activity是Android组件中最基本也是最为常见用的四大组件之一常见的Activity跳转方式1.显示跳转Intent intent = new Intent(MainActivity.this, AcitivityA.class); startActivity(intent );一般应用内部跳转会经常使用该方法。2.隐式跳转Intent intent = new Intent(); intent.setAction("com.test.start.actio

2021-05-03 23:35:46 594

原创 [RK3288][Android7.1] 调试笔记 --- 去除android应用沉浸模式弹出的提示“从顶部向下滑动即可退出全屏模式”

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143问题:客户的软件第一次进入沉浸模式,会有下图的提示,如果一直不点击确定,重启机器还是会有此现象Android7.1:Android5.1:沉浸模式:知识点:参考郭霖大神这篇文章Android状态栏微技巧,带你真正理解沉浸式模式附上测试demo: @Override public void onWindowFocusChanged(boolean h

2021-04-27 18:30:21 1547

原创 [Android应用]Android开发基础之数据持久化存储

定义:数据持久化指的是存储数据,android里有提供多种方式;把数据存储到data目录涉及API获取Apk的数据存储路径:File filesDir = this.getFilesDir();Log.d(TAG, "filesdir: " + filesDir);///data/user/0/com.example.activitydemo/files获取Apk的缓存存储路径:File cacheDir = this.getCacheDir();Log.d(TAG,

2021-04-26 01:27:04 429

原创 [Android应用]Android开发基础之广播接收者BroadcastReceiver

定义广播,是一个全局的监听器,属于Android四大组件之一。Android广播分为两个角色:广播发送者、广播接收者。应用场景1、App接受系统发出的系统广播;2、不同App之间的组件之间消息通信;3、同一个App的不同组件之间的消息通信;广播类型1、标准广播2、有序广播发送自定义标准广播...

2021-04-12 21:46:03 592

原创 [RK3399][Android7.1] 调试笔记 --- FwFactoryTool_v5.50_20190306拆包打包工具烧录后黑屏

Platform: RK3399-MIDOS: Android 7.1.2Kernel: v4.4.83问题:FwFactoryTool可以提供给客户自主拆包,修改kernel logo 、开机动画、以及一些版本号等等再重新打包成update.img镜像包等;有客户反馈烧录了用工具生成的update.img镜像包,无法正常开机,画面黑屏;问题日志:[ 2.774201] init: property 'ro.serialno' doesn't exist while expand

2021-04-10 14:36:07 2905

原创 [RK3288][Android5.1]调试笔记 --- 编译报错out/target/common/obj/PACKAGING/public_api.txt:116: error 5

Platform: RK3288OS: Android 5.1.1Kernel: v3.10.0问题:firefly-3288 编译Android报错,Ubuntu版本为16.04;问题日志:Checking API: checkpublicapi-lastChecking API: checkpublicapi-currentChecking API: checksystemapi-lastChecking API: checksystemapi-currentCopying

2021-04-07 09:37:28 785

原创 [RK3288][Android5.1]调试笔记 --- 编译报错error: unsupported reloc 43

Platform: RK3288OS: Android 5.1.1Kernel: v3.10.0问题:firefly-3288 编译Android报错,Ubuntu版本为16.04;问题日志:prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6//x86_64-linux/bin/ld: error: out/host/linux-x86/obj32/SHARED_LIBRARIES

2021-04-06 23:34:17 423

原创 [RK3288][Android5.1] 调试笔记 --- 适配客户定制的红外遥控器

Platform: RK3288OS: Android 5.1.1Kernel: v3.10.0需求:客户提供遥控器,需要在系统上适配该遥控器,接受对应的遥控器键值,并作相应的处理;方法:1、确定硬件接线方式,确定IR是直接接到RK3288上,并记住对应的pin脚;(PWM0)2、Linux 3.10内核关于红外的代码文件在:kernel/drivers/input/remotectl/目录下3、配置编译驱动选项 RK3288平台默认配置已有IR部分,没有的按下列方式添.

2021-03-31 20:15:04 3940

原创 [RK3288][Android7.1]调试笔记 --- Settings-关于设备-状态信息添加以太网MAC地址信息栏

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143需求:最新经常有客户问在哪里可以查看以太网的MAC地址,由于Android原生系统更多应用于手机等使用WIFI环境的手持设备,没有以太网相关信息很正常,我们在状态信息下直接加一栏以太网的MAC地址信息;方法:参考WLANMAC地址,编写xml代码;文件:package/app/Settings/res/values-zh-rCN/strings.xml b/res/values-z.

2021-03-17 18:25:11 912 3

原创 [RK3288][Android7.1]调试笔记 --- Settings设置WLAN热点支持遥控器弹出软键盘输入法

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143问题:使用遥控器点击"设置WLAN热点"后,在这个Dialog上无论用遥控器按哪个按键都无法弹出输入法。方法:先找到这个WifiApDialog:packages/apps/Settings/src/com/android/settings/wifi/WifiApDialog.java在上面的示意图我们发现这个dialog有两个可输入文本的输入框private TextVie.

2021-03-11 15:01:39 1178 2

原创 [RK3288][Android7.1]调试笔记 --- 修改串口节点/dev/ttyS*

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143需求:应客户软件的需求,需要将Android系统里面的/dev/ttyS3节点名称修改为/dev/ttyS9;实现:1、判断driver->name是否为"ttyS",index是否为3,如果是的话替换为ttyS9;diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.cold mode 100644new mode .

2021-02-03 11:26:11 2025

原创 [RK3288][Android7.1]调试笔记 --- 升级WebView版本

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143需求:升级高版本的WebView Apk;客户端播放网页,显示不正常;安装高版本的谷歌浏览器手动打开网页,显示正常;Android5.1开始,WebView具体实现从框架层剥离出来,通过一个包名来控制加载真正的WebView实现;开发应用打开网页端调用就是系统的webview,我们要做的将系统WebView Apk升级到高版本;手动调试:查阅RK 官方文档:浏览器FAQ.pdf文档的

2021-01-14 19:48:43 2770

原创 [RK3288][Android7.1]调试笔记 --- 支持多路USB摄像头

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143需求:RK3288接双目摄像头;解决:diff --git a/CameraHal/CameraHal_Module.h b/CameraHal/CameraHal_Module.hindex 5ba78aa..11fd7bf 100755--- a/CameraHal/CameraHal_Module.h+++ b/CameraHal/CameraHal_Module.h@@ -

2020-12-25 10:25:48 1262

原创 [RK3288][Android7.1]调试笔记 --- 打包bootanimation.mp4视频格式的开机动画

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143需求:Android系统项目定制开机动画,用mp4视频文件充当开机动画解决:diff --git a/cmds/bootanimation/BootAnimation.cpp b/cmds/bootanimation/BootAnimation.cppindex 2f0cdc7..cb51711 100755--- a/cmds/bootanimation/BootAnimation.

2020-12-17 16:00:40 886

原创 [RK3288][Android7.1] 调试笔记 --- 替换桌面壁纸显示拉伸且局部显示问题

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143问题:客户在横屏系统设置中导入一张1920*1080的壁纸,显示不正常,如下图壁纸效果与原图的对比效果;查看源码底图:frameworks/bas/core/res/res/drawable-sw720dp-nodpi/default_wallpaper.png...

2020-11-28 16:52:20 1009

原创 [Java]调试笔记 - 问题报错Cannot run program “sh“: error=24, Too many open files

问题:Android采用RootCmd工具类执行adb命令,执行多次之后报错,导致adb命令无法正常执行,先上报错日志;2020-11-04 21:10:30.307 5843-5843/com.orange.openclose W/System.err: java.io.IOException: Cannot run program "sh": error=24, Too many open files2020-11-04 21:10:30.308 5843-5843/com.orange.o

2020-11-10 21:04:26 1795

原创 [RK3288][Android7.1]调试笔记 --- LVDS+HDMI输出特殊分辨率800*1280竖屏

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143需求:RK3288双屏同显,一路LVDS,一路HDMI,其中HDMI经过驱动板点亮同一块LVDS屏,实现RK3288点两路800*1280LVDS屏,驱动板型号为:CY.R8311 V2,LVDS屏为MX1010503081NB;客户由于价格的原因没有采用1280*800横扫描的屏,而采用了800*1280竖扫描的屏;1、驱动800*1280LVDS首先,我们拿到厂商提供的规格书,确认一下屏

2020-11-10 19:09:39 6701

原创 [RK3288][Android7.1]调试笔记 --- 禁止下拉顶部通知栏/状态栏

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143需求:禁止下拉顶部通知栏/状态栏;解决:diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarView.

2020-10-29 11:16:30 939

原创 [RK3288][Android7.1]调试笔记 --- User版本调试串口debug有输出不可输入

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143问题:编译User版本发现调试串口debug有输出不可输入;解决:diff --git a/core/main.mk b/core/main.mkold mode 100644new mode 100755index b0207be..060b0ec--- a/core/main.mk+++ b/core/main.mk@@ -429,7 +429,7 @@ ifeq (tru

2020-10-22 21:56:59 920

原创 [RK3288][Android7.1]调试笔记 --- 内置高版本的APK编译User版本出错解决

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143问题:客户提供了几个从手机应用市场下载的输入法直接安装可用,要求固件内置,内置时编译User版本源码出错,编译User-debugg版本正常。报错日志:[ 41% 11788/28429] build out/target/product/rk3288/obj/APPS/Bdsrf_intermediates/oat/arm/package.odexFAILED: /bin/bash

2020-10-17 11:28:08 1784

原创 [RK3288][Android5.1] 调试笔记 --- LVDS+EDP双屏机器调节白平衡色温

Platform: RK3288OS: Android 5.1.1Kernel: v3.10.0需求:3288点双屏,客户的整机小屏EDP颜色偏冷,大屏LVDS偏黄,需要调节。方法:1、安装BizLineAdjustWithBcsh-release.apk,其中色温范围可以根据需求自行修改,默认是3500、4500、5500、6500、7500、8500、9500;修改源码中BizLineAdjustActivity中的COLOR_TEMPERATURE_VALUE 数组即可。色温的取值

2020-09-27 15:55:30 8132

原创 [RK3288][Android7.1]调试笔记 --- 解决主板HDMI接口输出给个别电视机无声音问题

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143问题:HDMI输出给个别电视机时,电视机无声音分析步骤:1、用以下命令测试HDMI是否有输出tinyplay 44.1k_2ch_16b_1k_15s.wav -D 0 -d 1 -c 2 -b 16 -r 44100 指令播放附件wav文件结论:该命令HDMI有声音输出2、打开音频相关的日志输出并提供Logcat日志给RKdiff --git a/tinyalsa_h.

2020-09-25 12:13:24 2695

原创 [RK3288][Android7.1] 调试笔记 --- 点MIPI屏初始化命令详解

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143需求:RK平台点亮MIPI屏,导入MIPI屏的初始化命令;方法:在对应的dtsi文件中修改panel-init-sequence数组附上RK对于命令的介绍举例说明:1、命令类型:0x39样式一:SSD2828_WritePackageSize(4);SPI_WriteData(0xFF);SPI_WriteData(0x98);SPI_WriteData(0x8

2020-09-25 10:26:02 3596 2

原创 [RK3288][Android7.1] 调试笔记 --- 固定CPU频率

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143需求:固定CPU频率方法:路径:/kernel/arch/arm/boot/dts/rk3288.dtsiCPU默认为变频,代码如下;cpu0_opp_table: opp_table0 { compatible = "operating-points-v2"; opp-shared; clocks = <&cru PLL_APLL>; roc

2020-09-14 15:30:21 2002 1

原创 [RK3288][Android7.1] 调试笔记 --- Android源码LOGO路径

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143问题:打包固件之后发现有客户的LOGO,调试的时候/system/media/目录并没有发现bootanimation.zip或者bootanimation.mp4,源码编译后OUT目录下也没有。为什么还是会有LOGO呢?解决:路径:/frameworks/base/core/res/assets/images有一张android-logo-mask.png 512x128分辨率的..

2020-09-11 18:12:37 454

原创 [RK3288][Android7.1] 调试笔记 --- 设置第三方输入法为默认输入法

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143需求:设置第三方输入法为默认输入法前提:预装第三方输入法,参考方法:路径:/packages/SettingsProvider/res/values/defaults.xmlconfig_default_input_method代表默认输入法config_enabled_input_method代表内置的输入法,内置可以设置多个,用:隔开<string name.

2020-09-08 20:13:18 1531

原创 [RK3288][Android5.1] 调试笔记 --- add_img_to_target_files权限不足导致otapackage打包失败

Platform: RK3288OS: Android 5.1.1Kernel: v3.10.0问题:打包OTA时报错:/bin/bash: ./build/tools/releasetools/add_img_to_target_files: Permission denied解决办法:进入该目录:/build/tools/releasetools/ 给予777权限chmod 777 ./*...

2020-09-08 11:20:46 344

原创 [RK3288][Android5.1] 调试笔记 --- 根据VID&PID读取不同的rilLib以实现4G模块的适配

Platform: RK3288OS: Android 5.1.1Kernel: v3.10.0需求:适配4G模块,本文以YUGA-CLM920-AC3为例1、添加USB转虚拟串口设备把4G模块虚拟成ttyUSB0~ttyUSB5等几个虚拟串口。1.1确认模块的Vendor ID and Product ID方法一:根据厂商提供的适配文档确认模块VID、PID方法二:拔插4G模块,根据内核日志确认模块VID、PID1.2kernel驱动修改添加宏定义&添加..

2020-09-08 10:40:47 1584 1

原创 [RK3288][Android5.1] 调试笔记 --- 条形屏UI适配

Platform: RK3288OS: Android 5.1.1Kernel: v3.10.0需求:切割屏目前在市面中应用越来越多,例如1920x540就是1920x1080切割,点屏屏参直接采用1080的方式即可点亮,但是UI要相对进去适配。路径:/kernel/drivers/video/rockchip/rk_fb.cindex a0f2e03..446c156 100755--- a/drivers/video/rockchip/rk_fb.c+++ b/drivers/

2020-09-07 17:52:22 852

原创 [Android应用]Android代码对节点进行读与写

在做Android开发板相关的开发需求的时候,我们有的时候需要去到Android系统对节点进行读与写;例如 echo 1 >pathprivate int writeSysfs(String path, String value) { try { FileWriter command = new FileWriter(path); command.write(value); command.close(); } catch (Exception e) { e.print.

2020-09-04 11:48:29 663

原创 [RK3288][Android7.1] 调试笔记 --- 默认系统语言设置为英文

Platform: RK3288OS: Android 5.1.1Kernel: v3.10.0需求:默认系统语言设置为英文路径:/build/target/product/full_base.mkdiff --git a/target/product/full_base.mk b/target/product/full_base.mkindex 035535a..54cffb5 100755--- a/target/product/full_base.mk+++ b/targe

2020-09-03 20:29:49 825

原创 [RK3288][Android5.1] 调试笔记 --- 修复HDMI缩放重启不保存问题

Platform: RK3288OS: Android 7.1.2Kernel: v4.4.143需求:由于485通信是半双工通信,需要控制引脚切换发送和接收

2020-09-03 16:01:09 784

RK3288 5.1色温调节.7z

RK3288点双屏LVDS+EDP,若两个屏本身的色温差异太大,看起来效果很差,需要进行白平衡调节;同理LVDS+MIPI也可以。附件为Android5.1的调节方法,包含调节色温的APK;

2020-09-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除