自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 资源 (40)
  • 收藏
  • 关注

原创 frida hook InMemoryDexClassLoader内存加载实现dump dex文件

import frida, sysmyflag = Falsedef on_message(message, data): global myflag if message['type'] == 'send': print("data--------=",data) #print("[*] {0}".format(message['payload'])) print("type=",type(message['payload']))

2021-10-25 17:19:51 766

原创 安卓获取APP对应的Android id的原理分析

android_id 的生成原理是由系统生成的随机数,并与应用 app 签名,经过 HmacSHA256 算法生成的;从 android 8 以后开始就是随机的了,每个应用获取到的简要步骤;获取的方式如下所示:androidId = android.provider.Settings.Secure.getString(context.getContentResolver(), android.provider.Settings.Secure.ANDROID_ID);...

2020-11-13 17:04:30 1627

原创 阿里云搭建git + repo 的rk3326源码无限制仓库记录

最近帮朋友搭建一个阿里云代码服务器。简单记录一下过程。源码: rk3326android 8.0服务器: 阿里云阿里云服务端: 简称 Server管理端: Admin客户端: client1、首先在服务的新建git 用户sudo adduser --system --shell /bin/sh --gecos 'git SCM user' --group --disabled-password --home /home/git git这种方法是网上比较常见的方法,创建的是一个禁用密码的

2020-07-20 09:43:48 614

原创 Android串口丢包重发的重传协议,一种流式重传协议

前言最近在做一款产品,主要功能是android 接收到音频数据通过串口实时发送MCU处理,要求延迟小,速度快,传输稳定性有保障。我们都知道串口是一种不可信任性传输。不能保障传输数据完整性,在产品测试过程中也发现低概率性出现数据丢包现象。所以需要设计一种支持流式可靠性传输协议。产品需要Android串口跟MCU串口通信传输音频流,每次传输大概1M左右,MCU接收到音频后需要立马处理,所以需要尽可能快接收数据处理,不能接收每一帧会回传校验结果。只有等到有错误帧才返回给Android 请求重发错误帧,如果一次

2020-07-16 16:32:50 1284 2

原创 android一键改机之真改机build.prop

本篇文章讲解如果真正修改手机硬件参数。app 会通过判断当前手机的imei、mac、imsi等参数来判断此手机多次注册过app。一般情况下的权重是 imei > imsi > mac > android_id 。Android 获取 imei 等信息的源码主要在TelephonyManager.java中,app 能获取这些参数只有这一种途径,通过adb 和shell是获取...

2020-02-12 12:47:00 11333 8

原创 动态修改Android参数信息的方法绕过改机检测

有很多朋友咨询过我如果修改Android的系统参数 比如 ro.build.id ro.product.name ro.product.device ro.product.model等参数。对应在APP端的java代码就是Build.ID Build.PRODUCT Build.MODEL等参数。不同于Xposed VirtualApp 双开助手DualSpaceGo双开双开精灵 这些软...

2019-12-23 13:08:05 4082

原创 repo 切换分支一种简单的方法

在Android开发中有时候要切换Android 版本,当前版本是android-8.1.0_r2如果我想切换到Android 9.0 的版本android-cts-9.0_r2可以进入到Android 根目录下.repo/manifests/.gitvim config[core] repositoryformatversion = 0 filemode ...

2019-12-06 16:55:13 3927

原创 Android 8.1 添加属性SystemProperties.set可执行权限

在Android 8.1由于selinux权限的限制。默认SystemProperties.set执行报avc denied,即使给 app android:sharedUserId="android.uid.system"权限也不行,如果想执行必须修改一些文件。device/mediatek/sepolicy/basic/non_plat/property.tetype persist_de...

2019-12-02 14:25:24 6548 1

原创 使用命令生成update.zip以及添加升级包检验签名功能

一般普通ota升级都是直接调用RecoverySystem.installPackage,让系统进入recovery,然后在recovery升级Android系统,但是存在一个缺点。如果他人使用非系统签名的update.zip升级包。也会使系统进入recovery模式。然后升级失败。死在recovery模式。所以每次升级之前要校验签名使用相同。 使用api接口是RecoverySystem....

2019-12-02 14:25:04 6641

原创 Android GpioService从app到驱动

因为最近项目Android要用到APP控制相关GPIO控制,因为网上大部分都是app直接通过JNI控制GPIO,这样做存在一个问题,GPIO被多个app打开会报错。同时也违背了Android设计初衷。这里demo也是从其他项目拷贝过来的。自己修改的。源码使用的是Android 5.1 的rk3288.使用控制led灯的方式来实现gpioservice。 通过JNI方式一般流程是app-&...

2019-12-02 14:24:54 1846 1

原创 Android 使用非阻塞的方式读写串口

上一篇博客简单介绍了Android 串口使用demo,项目开发中由于app 同学要求 例如 getMcuversion() 返回值是 当前单片机版本号,由于我们串口是阻塞的 ,所以我们接收到串口返回值后,readthread 仍不会结束。所以传递当前read结果防是有两种,一种通过handler方式将read结果发给getMcuversion(){},但是我们无法预知何时能读到结果。另外一种就是...

2019-12-02 14:24:40 2994

原创 Android 8.1 关机

之前发送Intent i = new Intent("android.intent.action.ACTION_REQUEST_SHUTDOWN");会报android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.ACTION_REQUEST_S...

2019-12-02 14:24:24 2374

原创 Android 8.1 添加 自定义可切换桌面

现在产品有一个需求,在工厂测试的时候启动时Android原生桌面launcher3,测试完毕后启动我们产品默认的app。所以自己在Android启动 桌面的时候做一个属性判断,如果属性persist.defaulthome = false就启动launcher3, = true就启动我们产品app。在Android 8.1 有seLinux权限管理很严格...

2019-12-02 14:24:12 1406

原创 Android 64位机器system app兼容32位apk问题分析(共享system uid )

rk3399 是一款基于arm64的机器,我们这边一款产品是基于rk3399 Android 7.1版本的开发,我们的 vtest.apk包含多个so,在正常userdebug模式下不会出现兼容性问题,如果切换到user版本就会出现概率性崩溃的问题。并且崩溃不是vtest.apk而且其他system apk 比如StressTest、 keychain、exchange等apk 概率性崩溃。首...

2019-12-02 14:23:53 3989 1

原创 Android编译预制过高版本app导致编译错误解决

先上错误代码No private recovery resources for TARGET_DEVICE rk3399_firefly_mipi_boxStarting build with ninjaninja: Entering directory `.'[ 50% 1/2] build out/target/product/rk3399_firefly_mipi_box/obj/A...

2019-12-02 14:23:41 7991 9

原创 Android串口Serial服务解析

正常Android设备的串口一般是用作debug调试使用,随着Android设备使用越来越广,比如智能pos、智能扫码机都会用到Android主板和单片机进行通信,如果Android主板和单片机通信数据量大可以使用USB,若是通信数据量小可以使用串口进行通信,因为串口通信简单并且稳定性高,最近做的一个项目就是Android使用串口和加密芯片进行通信,Android主板使用的是rk3288和rk33...

2019-12-02 14:22:54 10184 6

原创 Android 8.0 system app加载so Permission denied 解决

在预置包含react native 的Android app 预置到mtk 6739的系统中,此app 具体 platform 签名。此app启动会加载一些 facebook的so库发现此app 如果预置到system/app下,启动会报错。开始以为是没有把相关的so库 放到 system/app/xx/lib 下。在Android 6.0我都是可以正常启动的。发现在8.0 仍然会报错。报...

2019-11-06 11:09:38 10032 1

原创 android 实现 APP 保活且正常升级的方法

翻译机App保活技术调研报告Android系统核心App需要在Android开机期间一直后台运行,如果被杀死会立即重启。这个功能的实现是在App的AndroidManifest.xml添加android:persistent="true"属性控制。但是Android 8.0之后含有Persist的App禁止升级。如果我们把翻译服务相关的Ap设置android:persistent="true"...

2019-10-24 11:25:43 3957 14

原创 android app模拟 persistent 属性可以保活且正常升级的一种方式

背景:Android系统核心App和Service需要在Android开机期间一直后台运行,如果被杀死会立即重启。这个功能的实现是在App和Service的AndroidManifest.xml添加android:persistent="true"属性控制。但是Android 8.0之后含有Persist的App和Service禁止升级。如果我们把服务相关的App和Service设置androi...

2019-09-24 09:00:30 3145

原创 修改系统时间导致logcat read: unexpected EOF!崩溃

如果机器如果把当前系统时间往前调整(比如当前8月20日11点调整为8月18日9点),翻译机的logcat的buffer就会出现一直增大,超出系统设定的最大buffer size,比如当前是设置是4M ,但是通过logcat -g 可以达到7M,明显超出系统设置最大buffer。直到logcat输出出现read: unexpected,logcat崩溃退出。如下图所示:这几天我正在尝试解决...

2019-08-22 14:15:52 1167 4

原创 Android 添加中文medium字体

2.1 Android字体显示框架图Android显示字体medium字体主要流程:a).View布局文件或者代码中选择medium字体b).Framework根据View设置的字体选择相应medium的字体库c).根据framework提供的字体库Skia引擎绘制相应medium的字体主要流程图如下:3. NotoSansCJKsc-Medium中文字体使用方法Android可以...

2019-08-21 08:57:34 7944

原创 Android log日志系统分析-logcat源码解析

Android为我们提供了一个十分方便的命令行工具来读日志。Logcat 是一个命令行工具,用于转储系统消息日志,其中包括设备引发错误时的堆叠追踪以及从您的应用。借用别人的一张图,显示 logd的框架在Android 开机时候 huLogcat工具源代码位于system/core/logcat目录下,编译后生成的可执行文件位于out/target/product/generic/syste...

2019-08-20 16:02:10 5843

原创 Android 手机开机不断重启故障分析

1、目前拿到编号为066E的故障翻译机,通过Android logcat日志分析初始报错现象是Android系统的zygote的AndroidRuntime在不断重启。具体现象如下:1. 07-26 07:48:43.625 2378 2378 D AndroidRuntime: >>>>>> START com.android.internal.os...

2019-07-04 20:29:49 4796 4

原创 yocto源码下载

1、首先下载repomkdir ~/bin (this step may not be needed if the bin folder already exists)curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo因为国内防火墙的原因,把repo 的url 地址改为国内REPO_UR...

2019-05-31 13:55:17 1019

原创 imx8 编译 yocto报错问题解决

编译 yocto 版本报如下错误NOTE: recipe libwebp-0.6.1-r0: task do_populate_sysroot: SucceededNOTE: Running task 2647 of 8130 (/home/blv/workdata/imx-yocto-test/sources/poky/meta/recipes-extended/gzip/gzip_1.9....

2019-05-30 15:43:59 3799

原创 imx8开发之~自动编译脚本编写

系统编译的总编译脚本#!/bin/bashsource build/envsetup.shlunch mek_8q-userdebugmake -j4./make_uboot.sh./make_kernel.sh./make_boot_dt.sh 编译 uboot 脚本#!/bin/bashsource build/envsetup.shlunch mek_8q-userd...

2019-05-10 17:26:04 1025

原创 rk3288 双摄使用camera2开发

本文是基于rk3288 usbcamera这篇文章的更新版本,上篇文章 是基于第三方框架UvcCameraDemo开发的。自己想基于Android系统提供的camera2的接口开发。由于我们的usb接口不是在主host上,报错如下02-27 06:36:02.674 2425 2494 E RequestThread-0: Timed out while waiting for request...

2019-05-09 16:22:43 2921 2

原创 基于九鼎核心板的rk3288 双屏开发

rk3288支持双屏异显,一般使用的是mipi、lvds 和HDMI进行异显示,我们这边使用的是mipi和lvds。mipi 是主屏10寸。lvds副屏7.85寸。双屏显示要注意以下问题1、双屏异显时,一个显示接口当主屏,另一个当副屏;主副屏由板级dts文件确定,启动后无法动态更改;2、 当两路显示接口显示不同分辨率时,rk3288只能为一路显示接口提供精确时钟,另一路显示接口时钟会有微小频...

2019-05-09 14:58:07 2229

原创 imx8开发之~源码编译

首先要下载相关的工具链In addition to the packages requested on the Android website, the following packages are also needed:$ sudo apt-get install uuid uuid-dev$ sudo apt-get install zlib1g-dev liblz-dev$ sud...

2019-04-30 09:40:07 3257

原创 imx8开发之~源码下载

由于imx8新出的,市面上资料很少,所以自己把遇到问题写出来imx8 源码下载路径,如果没有账号就申请一个,由于我们是做无人驾驶公交的方向,所有我们选择的是自动驾驶版本。android_o8.1.0_2.0.0_auto-beta_image_8qmek2.tar.gz下载网址https://cache.nxp.com/secured/bsps/android_o8.1.0_2.0.0_...

2019-04-24 18:14:48 2665 2

原创 Android 双usb 摄像头支持

公司有一款产品需要支持双USB摄像头,标准的Android设备只支持同时打开一个camera,若要支持两个显示需要修改rk3288 源码,hardware/rockchip/camera/CameraHal/CameraHal_Module.h#define CAMERAS_SUPPORT_MAX 2#define CAMERAS_SUPPORTED_SIMUL_MA...

2019-04-16 11:06:04 3253 1

原创 rk3368禁止显示luncher和开机启动的壁纸

修改地址如下:rameworks/base/core/res/res/values/config.xml因为有点懒就直接列出diff 差异 <string name="image_wallpaper_component" translatable="false">com.android.systemui/com.android.systemui.ImageWallpaper&

2019-01-11 10:20:43 497

原创 rk3368一些定制修改

因为这些改动都是很早之前做的,也不想分析为什么这么改了,只是简单列出来修改代码。文件去除rk3368 双击电源键打开摄像头frameworks/base/core/res/res/values/config.xml删掉这一行<bool name="config_cameraDoubleTapPowerGestureEnabled">true</bool>设置...

2019-01-11 10:20:05 2356

原创 react学习--左手法则走迷宫

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content=&amp

2019-01-09 10:43:54 1894

原创 react学习之--方向键走迷宫

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> &

2019-01-09 10:31:29 313

原创 多次点击camera键或者电源键 调起app

当时这个需求是,连续点击camera键启动扫码app。由于怕和其他app共享一个广播,所以自己定义了一个广播ACTION_CAMERA_BUTTON.DC扫码app监听ACTION_CAMERA_BUTTON.DC这个广播。修改文件frameworks/base/policy/src/com/android/internal/policy/impl/PhoneFallbackEventH...

2018-12-26 14:20:08 339

原创 禁止状态栏下拉

源码文件frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java public void disable(int state) { //add start state = state | StatusBarManager.DISABLE_NOT...

2018-12-26 14:07:43 1161 3

原创 Android 4.2寸屏幕显示4.0的效果

我们之前有一款产品,显示屏时4.2寸的,但是屏幕模组是4.0寸的,导致显示的时候,Android系统状态栏有很小的一部分被遮住了,显示不全。就想着能不能修改系统默认显示大小,解决这个问题。平时大家调试app适配的时候,经常会使用wm工具wm size可以查看当前屏幕分辨率,也可以设置屏幕分辨率(当然也就一般调试问题wm size)。eg: wm size 720x1280这是我们当前...

2018-11-20 14:27:38 827

原创 rk3368支持外置SD或TF的OTA卡升级

默认rk3368不支持外置SD卡升级,升级时候会报错。Android系统 为6.0首先在bootable/recovery/roots.h下添加void ensure_usb_mounted();void ensure_sd_mounted();文件 recovery.cppvoid ensure_sd_mounted(){ int i; for(i = 0; i &...

2018-11-19 15:09:48 1678

原创 谷歌输入法设置隐藏

由于我们产品没有Android底部三个导航键,并且开机之后就启动我们自己的app,一旦进入输入法设置之后就无法退出当前界面。只能重新启动机器,这是一个很操蛋的bug,之前有测试的同学告诉我。我上一个版本没有设置这个选项,通过查询log得知,我之前版本是没有做user_setup_complete 初始化设置。有两种解决办法。第一中就是直接系统第一次开机的时候不设置 Settings.S...

2018-11-19 14:14:24 1644 1

Android源码demo.zip

Android系统源码,对于深入一些系统调用可以下载看看Android系统源码,对于深入一些系统调用可以下载看看Android系统源码,对于深入一些系统调用可以下载看看

2019-12-27

android 保活对应的patch

支持android persist app 保活且支持升级的patch 。已经在android 8.1 验证通过。配套博客https://blog.csdn.net/lb5761311/article/details/102719673

2019-10-30

fastboot.ps1

一键刷入所有的img,包括 lk、modem等。只需要把脚本放到要刷机的rom目录里面。右键选择powershell 执行。如果rom里面没有那么多img,记得删除对应的 fastboot falsh 字段

2019-10-24

persist.zip

配套此文章的 https://blog.csdn.net/lb5761311/article/details/101263859,实现一种可以正常升级且保活的升级方案。

2019-09-24

DoubleCamera.zip

基于rk3288 的usb 双摄开发的 demo https://blog.csdn.net/lb5761311/article/details/90039794

2019-05-09

imx8 开发Android相关文档

开发基于Android 8.0 版本的imx8的开发文档

2019-04-24

Android Gpio service

配合博客相关的代码https://mp.csdn.net/mdeditor/79739569

2018-03-29

bootimg解压打包工具

用于解压和打包 bootimg的工具 包括 unpackbootimg mkbootimg mkbootfs和minigzip

2017-11-24

Android版本的sysbench工具

sysbench是一个模块化、跨平台、多线程基准测试工具,主要用于测试不同系统参数下的数据库负载情况,本文主要介绍0.4版本的使用。sysbench主要用于以下性能测试: 文件I/O性能 调度 内存分配和传输 POSIX线程 数据库

2017-11-21

Android 版本的busybox和 ifstat工具

Android版本的busybox 和ifstat。亲测使用方便。很多小工具。适用于测试开发

2017-11-08

Android iperf 工具

用于wifi网络吞吐量测试。。个人亲测可以使用。Android端 和PC端都有

2017-11-07

Android性能测试

Android性能测试 用于Android稳定性测试和压力测试的好资料

2017-11-01

声波配网连接wifi(ssid和pwd)

声波配网连接wifi。有编码端和解码端。解码后得到结果(ssid和pwd)尝试连接wifi 相关博客 http://blog.csdn.net/lb5761311/article/details/78052657

2017-09-21

Wireshark程序

pc 端的Wireshark 程序。配合我的tcpdump使用的。已经测试过ok pc 端的Wireshark 程序。配合我的tcpdump使用的。已经测试过ok

2017-09-13

python 通过adb 查看Android系统状态脚本

python 通过adb 查看Android系统状态脚本 网速 向pc端wireshark.py 实时传递网络数据。自己亲测过可以使用

2017-09-13

REPO镜像服务器搭建和管理

REPO镜像服务器搭建和管理 用于搭建Android代码管理。很实用的说明。自己已经试验过。可以成功搭建环境~~~~~~~~~~

2017-09-13

ch340 win7 64 位驱动

ch340 win7 64 位驱动 自己测试过可以使用。ch340 win7 64 位驱动 自己测试过可以使用。 ch340 win7 64 位驱动 ch340 win7 64 位驱动

2017-09-13

科大讯飞语音识别相关指导文档

科大讯飞语音识别相关指导文档 科大讯飞语音识别相关指导文档 科大讯飞语音识别相关指导文档 科大讯飞语音识别相关指导文档

2017-09-13

声波配网实例

声波配网实例基于Android和ios端的。可以用于参考。很有用 声波配网实例基于Android和ios端的。可以用于参考。很有用

2017-09-13

Android settings源码

Android settings源码 有需要自己写settings的可以参考下。Android 4.4的 很有用的。支持大家看 Android 4.4的

2017-09-13

云知声平台使用指南

云知声平台使用指南 云知声平台使用指南 云知声平台使用指南 云知声平台使用指南 相关语音识别的api接口说明文档

2017-09-13

airkiss原理

自己总结airkiss原理 大家随便看看。有需要的自己下载 自己总结airkiss原理 大家随便看看。有需要的自己下载

2017-09-13

从零搭建 repo git 服务器

从零搭建 repo git代码管理服务器,自己已经一步步实现,现在写出了共享

2015-09-15

[STM32自学笔记].蒙博宇.扫描版.pdf

[STM32自学笔记].蒙博宇.扫描版.pdf 关于stm32开发的资料

2014-07-10

野火 stm32 pdf 教程 全本

初学者学习 stm32必备。很好的文档关于stm32

2014-07-10

Android应用开发揭秘.pdf

Android应用开发揭秘.pdf 学习android的必备。你懂得

2014-07-10

Android+移动开发一本就够.pdf

Android+移动开发一本就够.pdf 学习android的必备。你懂得

2014-07-10

STM32学uCGUI入门手册.pdf

学uCGUI入门手册.pdff 学习ucos和gui必备。大家都懂得

2014-07-10

Android终极开发教程.pdf

Android终极开发教程.pdf 很不错的一本书。推荐给大家

2014-07-10

C++程序设计原理与实践.pdf

C++程序设计原理与实践.pdf 老外写的权威c++书籍。c++必备

2014-07-10

Android(卷2)(带全目录完整版)邓凡平

Android(卷2)(带全目录完整版)邓凡平 全部文档 高清

2014-07-10

android的hal层下的camera的实现

有关android的hal层的camera代码实现。一般这个代码从不对外公布。

2014-07-10

android的sensor的hal层独家密码

一般情况做android的都知道hal层以下sensor代码都不公开。今天我就公布sensor的hal以下代码。对于深入了解sensors很有用

2014-07-10

uip协议 资料已经源码分析

自己独家搜索网上几乎所有有用的关于uip协议的pdf文档。对于在开发中使用uip的同学。这个很有用

2014-07-10

官网下载 ucos stm32f103 源码

我从官网下载的ucos评估板代码!!直接可以使用。对了解ucosIII的人有用

2014-07-10

野火 lwip源码

可以直接使用。。需要代码改动很小。对于stm32 网络开发必用

2014-07-10

android 4.4 传感器分析

我公司的大牛从上到下的完整分析.公司内部培训专用

2014-07-10

尚观培训全套代码

这是我尚观培训时候。全部老师讲的全部实例代码。基于三星arm11裸板驱动。有自学的朋友可以下载使用。全部验证过没有任何错误。包括lcd、nand、pwm、中断向量、mmu、led等应有尽有驱动

2012-11-01

公司面试题目

是我自己整理的。很有用.都是一些公司面试基本类型、有面试的可以下载

2012-11-01

空空如也

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

TA关注的人

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