自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Letcos

letcos的个人博客

  • 博客(56)
  • 资源 (1)
  • 收藏
  • 关注

原创 Android集成GMS服务及GMS认证方案

如果产品要出到国外,特别是欧美,那么极大可能需要集成GMS并进程GMS认证。这里有三种情况:1.特殊定制化设备,Android只是一个平台,所有业务全部都是自己的App实现的,服务器也是自己的。中情况可以不集成GMS,不做认证。2.只使用GMS的核心功能,大概就是非手机和平板类设备。比如只使用GMS核心服务和Google地图服务。这个时候可以自己集成,然后使用下面的方法绕过认证(不推荐,最好找自己的方案商拿认证,没有风险,不过成本可能较高)3.需要使用大量的google服务,这个就需要找自己的方案商

2020-12-13 20:17:23 2475 2

原创 Android无法正常编译OTA差分包

平台:exynos 8895Android 7.0一般来说,OTA整包和差分包的编译升级功能,方案商都会条是好的,我们直接该该参数和配置拿来用就好了。但是不排除某些很坑的给的SDK并没有调试好。下面是差分包的补丁(CSDN上50积分的补丁,真坑):diff --git a/build/core/Makefile b/build/core/Makefileindex 74e16fc..f5e0274 100644--- a/build/core/Makefile+++ b/build/core

2020-12-13 19:15:05 474

原创 永久关闭SELinux

当我们自己编写native serivce时,如果打开SELinux,往往需要耗费大量无意义的时间在添加权限上面。所以在对系统安全等级要求不是非常严苛的情况下我们可以关闭SELinux。补丁如下:diff --git a/system/core/init/init.cpp b/system/core/init/init.cppindex be1c232..adda5d8 100755--- a/system/core/init/init.cpp+++ b/system/core/init/init.

2020-12-13 19:09:20 577 1

原创 过滤setting wifi列表中特定ssid的wifi

有时我们只希望用户搜到某个前缀的wifi或者不希望用户搜到包含某个特定字符的wifi,这个时候可以在扫描显示wifi列表的时候过滤某些特定的为wifi。具体示例如下:diff --git a/packages/apps/Settings/src/com/android/settings/wifi/WifiSettings.java b/packages/apps/Settings/src/com/android/settings/wifi/WifiSettings.javaindex 8eb1759..

2020-12-13 19:05:13 488

原创 低电量提示和关机方案

平台:exynos 8895Android 7.0Android本身自带低电量操作的,可以按需修改,默认描述如下:1.BatteryWarningLevel=15%,低于15%电池图标会变成红色;现在手机一般设置为20%2.criticalBatteryWarningLevel=5%,低于5%系统会在状态栏弹出低电量警告提示3.关机电量0%,电量为0%且没有充电,系统会自动关机具体修改位置如下:diff --git a/frameworks/base/core/res/res/values/

2020-12-13 18:59:16 1642

原创 user模式下允许使用root和adb调试

平台:exynos:8895Android 7.0在某些情况下,我们需要在User版本下调试。但是User版本就算可以通过开发者模式打开adb,也只能使用普通用户登陆。这对调试来说是很麻烦的,所以我们可以允许User模式以root使用adb。具体不定如下:diff --git a/build/core/main.mk b/build/core/main.mkindex a27d4a8..1f0412e 100644--- a/build/core/main.mk+++ b/build/cor

2020-12-13 18:45:42 583

原创 关闭系统默认铃声

Platform:RK3399OS:Android 7.1.21.需求需要关闭(修改)系统默认铃声。2.相关文件及目录build/target/product/core_base.mk b/target/product/core_base.mk PRODUCT_PROPERTY_OVERRIDES := \ ro.config.notification_sound=OnTheHunt.ogg \ //提示铃声 ro.config.alarm_alert=Alarm_Cl

2020-07-06 10:39:07 582

原创 高温导致的设备重启

platfom:RK3399OS:Android 7.1.2现象设备在密闭未开空调的一个实验室做满负荷老化实验,发现十几分钟时候会出现关机重现现象.分析步骤一:首先分析认为有非常大的可能性是CUP过温自我保护重启了.RK808:查看RK808的数据手册发现:发现RK808的默认温度阈值是85度CPU/GPUrk3399.dtsi: soc_thermal: soc-thermal { polling-delay-passive =

2020-06-25 20:37:31 1213

原创 App预装及示例

platform:RK3399OS:7.1.2参考:1.http://ddrv.cn/a/905012.https://blog.csdn.net/zhaoyufei133/article/details/939067523.https://notes.z-dd.net/2020/02/26/RK3399%E9%A2%84%E7%BD%AEAPK%E5%8F%8A%E9%97%AE%E9%A2%98/RK的SDK预装app有两种方式:一种是Androd系统标准的实现方式,一种是RK自己实现的v

2020-06-25 20:30:32 929

原创 允许安装第三方应用

Android 8.0以下临时允许设置adb shell settings put secure install_non_market_apps 1查看adb shell settings get secure install_non_market_apps可以获取状态0为关闭,1为开启永久打开diff --git a/packages/SettingsProvider/res/values/defaults.xml b/packages/SettingsProvider/res/va

2020-06-04 07:34:08 1520

原创 网络存储文件系统挂载

网络存储的访问一般有两种方式,API访问(包括对应的命令行工具及程序),本地挂载访问.本文档主要介绍本地挂载访问.smbmount -t cifs -o "rw,dir_mode=0644,file_mode=0644,username=username,password=yourpassword" //192.168.1.100/yourshare_folder_name /usr/local/your_server_foldernas(nfs)mount -t nfs 192.168.1.38

2020-05-27 19:49:42 905

原创 APK保活系统及应用方案

概述在某些场景下,我们想让某些app能一直在前台或者后台运行,而不被Android系统杀死.这时就涉及到了应用保活.应用保活可以从两个方向来实现,一个是应用层,一个是系统层.Android系统进程优先级应用保活从本质上来讲就是提高进程的优先级.详细可以参考以下博客:https://www.jianshu.com/p/4ee14aa23f07下面是Android定义的ADJ值.应用保活对用开发app的公司来说,由于没有系统源码,所以只能从app层面来考虑保活;但是对于rom定制厂商来说就可以从

2020-05-23 15:07:52 646

原创 curl请求失败

概述OTA上传场景,脚本需要使用curl请求服务器的一个接口传递信息.但是在源码服务器上一直卡在请求阶段,本地机器却可以请求成功.分析解决背景信息主机IP信息:OTA服务器IP地址:10.10.7.40源码服务器地址:10.10.7.83本地地址:10.10.9.68 请求:curl -d "newtime=$timestamp&number=$1&md5=$md5" https://niot.com:8091/api/edition/firmwareedition_a

2020-05-23 12:18:43 1360

原创 ssh免密登陆原理-步骤-问题

参考:1.https://www.cnblogs.com/sunju/p/11073530.html2.https://www.cnblogs.com/henkeyi/p/10487553.htmlLinux 密钥登陆原理公私钥简介公钥和私钥都属于非对称加密算法的一个实现,这个加密算法的信息交换过程是:持有公钥的一方(甲)在收到持有私钥的一方(乙)的请求时,甲会在自己的公钥列表中查找是否有乙的公钥,如果有则使用一个随机字串使用公钥加密并发送给乙。乙收到加密的字串使用自己的私钥进行解密

2020-05-22 19:42:08 274

原创 关闭休眠仅熄屏

Platform:RK3399OS:Android:7.1.2参考:1. https://ask.csdn.net/questions/6736942. https://www.optbbs.com/thread-4216693-1-1.html概述产品需求:在熄屏状态下也可以随时响应语音唤醒.而且主要功能可以使用.由于早期设计的时候全部采用了低功耗硬件设计,所以在真实修休眠下许多功能都不可用.所以只有临时采用只熄屏不休眠的方式实现,后续迭代再修改硬件电路设计.关闭休眠关闭系统休眠有两步操

2020-05-22 18:36:20 1070

转载 现代Linux操作系统的栈溢出

译者注:本文源自《[细节剖析]X Windows中一个22年的漏洞》中提到的一篇文章,即如何溢出有保护机制的linux,路径如下:http://www.exploit-db.com/papers/24085/,本着学习的目的,在学习过程中,翻译出来分享给大家。另外为了区分Stack和Heap,在本人的所有文章中“Stack”与“栈”对等“Heap”与“堆”对等因为曾经被人坑惨了,有些文章中把“Stack”翻译成“堆栈”,搞得我着实的晕了好久。前提条件:对C语言和x86_64有基本的了解。1.

2020-05-22 11:33:50 288

原创 关机充电满电图标

platform:RK3399OS:Android 7.1概述RK已经实现了关机充电图标动画显示的功能,在实际的使用过程中有一个问题:就算充满电了,充电动画图标仍然在,而没有一个满电图标显示.满电图标显示1.增加满电图标,目录如下tools/resource_tool/resources/images/battery_fully.bmp2.修改配置文件tools/resource_tool/resources/images/battery_fully.bmp #reserve. ba

2020-05-21 13:27:37 774

原创 高可靠OTA升级

platform:RK3399OS:Android 7.1概述​ OTA(空中下载技术)是一项在线升级技术,它允许终端设备通过网络从服务器下载系统固件并进行升级。高可靠OTA是RK在OTA的基础上增加了两个备份分区实现的一套高可靠的OTA升级机制,其高可靠表现在由于意外情况(断电、固件问题、机器故障)导致升级失败的情况下,仍然可以使用备份分区开机,再次进行升级,避免了升级变砖的情况。​ 先简要介绍普通OTA,然后介绍高可靠OTA普通OTA步骤1.配置版本号及更新服务器device/r

2020-05-21 13:09:42 1072

原创 recovery常见配置修改

platform:RK3399OS:Android 7.1概述简要介绍三点:字符相关修改方向修改固件升级动画修改配置修改修改中英文diff --git a/recovery.cpp b/recovery.cppindex 10743c9..a9f41c5 100644--- a/recovery.cpp+++ b/recovery.cpp@@ -137,7 +137,7 @@ static const int BATTERY_WITH_CHARGER_OK_PERCENTAG

2020-05-18 18:30:24 1468

原创 高可靠OTA运行校验错误

platform:RK3399OS:Android 7.1现象描述使用RK的高可靠OTA方案.一直编译和测试没有问题.今天转User版本的OTA固件发现编译失败.并报错:boot or recovery image sha mismatch网上搜索的解决方案是关闭校验,但是这样并不安全.所以自己分析.分析步骤步骤1:验证是否是环境问题.之前都是编译的Userdebug版本,第一次编译User版本,怀疑是环境问题.执行make cleanmake distclean清理环境之后

2020-05-11 19:06:29 324

原创 关机充电拨适配器自动开机

platform:RK3399OS:Android 7.1现象描述关机充电需求如下:1.插上充电器,一直充电; a.充电时按开机键,开机 b.如果拔掉充电器(断电),保持关机;2.未插上充电器,按开机键; b.电量高于5%(&& 电压高于6.894V),开机 c.否则不开机但是关机充电拔掉适配器会开机,这显然是不符合需求的.分析步骤步骤1:确认是否有走关机逻辑抓log发现charger discon

2020-05-11 17:51:22 683 1

原创 APK信息查看

概述对于没有源码的apk,有时候我们需要知道apk的一些信息,这时候就需要一些方法.查看方式aapt在 SDK 的 build-tools 目录下,将 build-tools 目录添加到环境变量中,就可以直接使用 aapt 命令.查看apk的相关信息aapt dump badging tv_video/tv_video.apk部分信息:package: name='com.ktcp.tvvideo' versionCode='6700' versionName='4.7.0.2051' p

2020-05-11 16:10:50 1018

原创 固件UserDebug转User

概述Android固件在调试的时候一般会使用userdebug版本,这样可以直接root,而且有非常多的log信息帮助调试.但是正式发布的时候就需要使用User版本.User版本关闭调试log信息.User版本除了必要的打印信息和报错信息外,应该关掉多余的调试信息.menuconfig中关掉相应的调试配置.驱动文件中关闭自定义的调试宏对于使用printk打印的信息根据实际情况注释掉.关闭adbadb及root配置的属性如下表所示:当lunch选择user版本时,ro.secure一

2020-05-11 12:14:18 530

原创 Android按键上报

参考:1.https://ask.csdn.net/questions/767179概述按键信息上报是input系统里面一个最基本,最简单,也是最常用的功能.一般直接配置dts即可,但是也有可能有定制需求,比如自定义按键和上报特殊按键.新增按键内核已经实现了通用按键驱动,优先建议使用. gpio_keys: gpio_keys { compatible = "gpio-keys"; pinctrl-names =

2020-05-11 09:35:50 526

原创 SN及Mac地址烧录

platform:RK3399OS:Android 7.1参考:1.比特人生 https://blog.csdn.net/ielife/article/details/867193132.KrisFei https://blog.csdn.net/kris_fei/article/details/79447343?ops_request_misc=%257B%2522request%255...

2020-05-07 15:02:58 7547 3

原创 RK3399充电管理

platform:RK3399OS:Android 7.11. 概述本文档简要介绍基于RK3399实现充电管理相关部分,主要包括Typec充电和uboot关机充电两大部分。主要实现普通充电、PD充电、关机充电、电量上报、过放及低电保护等功能。2. Typec正常充电typec充电需要fusb302+bq25700+cw2015配合使用才可以正常使用各项功能.驱动已经调试和验证过,所以调...

2020-05-06 18:07:55 5568 4

原创 [Camera]摄像头镜像

platform:RK3399OS:Android 7.1参考:1.石先 https://www.jianshu.com/p/7d88ec1347b62.KrisFei https://blog.csdn.net/kris_fei/article/details/1030245053.KrisFei https://blog.csdn.net/kris_fei/article/detai...

2020-05-06 11:36:54 3860

原创 Android开机动画及黑屏

platform:RK3399OS:Android 7.11.Android各阶段动画Android动画主要分为关机充电动画和开机动画;开机动画又分为三个阶段:uboot阶段动画、kernel阶段动画、Android阶段动画。1.1uboot开机动画Uboot阶段由于大部分环境和驱动没有准备好,所有此阶段显示直接采用的framebuffer;而且严格来说只是图片,并不是动画。要在ub...

2020-05-05 18:07:51 1236

原创 [Audio]基础声电-THD分析

1. 音频测试音频系统是一个复杂的系统,需要从产品定位,电路设计,结构设计,物料选型,喇叭选型,音腔设计等多方面综合考虑。初步设计完成之后,还需要使用专业设备或者到专业的音频实验室进行音频相关的测试:基础声电测试;声质量测试;声功率测试;产品振动测试以及噪声测试等。根据产品定位以及测试结果反复调整软硬件设计及参数,最终达到一个相对满意的声学效果。这是一个复杂而漫长的过程。1.1 基础电声测...

2020-05-02 13:42:59 9873

转载 [Audio]从AudioTrack到AudioFlinger

本文转载自zyuanyun的博客,原文地址为:https://blog.csdn.net/zyuanyun/article/details/60890534转载请注明作者及原文链接。1. Android 音频框架概述Audio 是整个 Android 平台非常重要的一个组成部分,负责音频数据的采集和输出、音频流的控制、音频设备的管理、音量调节等,主要包括如下部分:Audio Appl...

2020-04-03 18:05:40 646

转载 [Audio]ALSA逻辑设备篇

本文转载自zyuanyun的博客,原文地址为:https://blog.csdn.net/zyuanyun/article/details/59180272转载请注明作者及原文链接。6. 声卡和 PCM 设备的建立过程前面几章分析了 Codec、Platform、Machine 驱动的组成部分及其注册过程,这三者都是物理设备相关的,大家应该对音频物理链路有了一定的认知。接着分析音频驱动的中...

2020-03-31 14:49:39 550

转载 [Audio]ALSA物理链路篇

本文转载自zyuanyun的博客,原文地址为:https://blog.csdn.net/zyuanyun/article/details/59170418转载请注明作者及原文链接。1. Overview硬件平台及软件版本:Kernel - 3.4.5SoC - Samsung exynosCODEC - WM8994Machine - goni_wm8994Userspace...

2020-03-31 13:44:20 540

原创 [Audio]ALSA音频框架-简介

参考:1. 奇小葩 https://blog.csdn.net/u012489236/article/details/980681222. 技术芯 https://blog.csdn.net/sinat_37817094/article/details/804908303. 哈迪斯_石头 https://blog.csdn.net/zqh6516336520/article/details/...

2020-03-23 22:08:53 906

原创 [Audio]音频总线及编码

参考1. 充满活力的早晨 https://www.jianshu.com/p/cfb3d4dc36762. Baidu百科 https://baike.baidu.com/item/pcm%E7%BC%96%E7%A0%81/10865033?fr=aladdin3. qingkongyeyue https://blog.csdn.net/qingkongyeyue/article/deta...

2020-03-22 11:35:56 474

原创 [Audio]音频相关概念及参数

参考:1. 米饭星 https://zhuanlan.zhihu.com/p/486768642. baidu百科 https://baike.baidu.com/item/%E9%9F%B3%E9%A2%91%E7%BC%96%E7%A0%81#33. 洪水猛兽行 https://blog.csdn.net/yuhengyue/article/details/914431914. Wat...

2020-03-19 11:40:05 1237

原创 [Audio]硬件设备

参考:1. 《录音工程师手册》 周小东2. mp_discard https://www.sohu.com/a/125374826_4686263. baidu百科 https://baike.baidu.com/item/%E6%89%AC%E5%A3%B0%E5%99%A84. baidu百科 https://baike.baidu.com/item/%E6%A8%A1%E6%95%B...

2020-03-18 11:37:31 924

转载 [Boot]Android系统启动-综述

本文转载自Gityuan的博客,原文地址为:http://gityuan.com/2016/02/01/android-booting/转载请注明作者及原文链接。基于Android 6.0的源码剖析, Android启动过程概述一. 概述Android系统底层基于Linux Kernel, 当Kernel启动过程会创建init进程, 该进程是所有用户空间的鼻祖, init进程会启动s...

2020-02-26 16:26:31 449

转载 [Boot]理解Android进程创建流程

本文转载自Gityuan的博客,原文地址为:http://gityuan.com/2016/03/26/app-process-create/转载请注明作者及原文链接。基于Android 6.0的源码剖析, 分析Android进程是如何一步步创建的,本文涉及到的源码:/frameworks/base/core/java/com/android/internal/os/ - Zy...

2020-02-26 15:29:57 272

转载 [Boot]ActivityManagerService启动过程

本文转载自Gityuan的博客,原文地址为:http://gityuan.com/2016/02/21/activity-manager-service/转载请注明作者及原文链接。基于Android 6.0的源码剖析, 分析Android系统服务ActivityManagerService,简称AMSframeworks/base/core/java/android/app/ - ...

2020-02-26 12:25:51 286

转载 [Boot]Android系统启动-SystemServer下篇

本文转载自Gityuan的博客,原文地址为:http://gityuan.com/2016/02/20/android-system-server-2/转载请注明作者及原文链接。基于Android 6.0的源码剖析, 分析Android启动过程的system_server进程frameworks/base/services/java/com/android/server/ - Sy...

2020-02-26 12:08:50 212

GNU Make 使用手册 pdf

这是英文版的GUN make官方使用手册。官网上的手册是英文版,html格式的。我将其打印为pdf格式便于使用和查看。

2019-04-21

空空如也

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

TA关注的人

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