- 博客(11)
- 资源 (4)
- 收藏
- 关注
原创 利用Eclipse的MAT查找安卓内存泄漏问题
MAT(Memory Analyzer Tool)是一个分析 Java 代码内存使用情况的工具,下载地址,相比Android Studio的Profiler,MAT功能更加强大。在运行时,可以使用 Android Studio(或者通过adb命令)为应用程序生成堆转储文件。命令:注意:如果APP不是DEBUGGABLE的,会报错如果是自己开发的APP,那好办,改成debug版就行,如果是第三方应用,则只能从安卓系统上做相办法。
2023-03-18 15:09:01
395
原创 Volley使用不当,导致线程不断增加
最近写了个简单的程序,有个http的请求需求,也不复杂,就集成个Volley做为网络请求框架。由于程序常驻后台运行,使用中发现运行时间长了,任务线程就不工作了。 开始我以为是线程异常退出了,但查看日志并没有发现有退出的痕迹,后来发现程序的线程数很多,经验证,是在使用volley发送请求时,每次都新建RequestQueue导致的,建议一个程序,用一个单例的RequestQueue,顺便学会了安卓线程的查看方法,基本和Linux一致。 首先用ps命令,过滤...
2021-08-14 16:41:23
210
原创 Android无障碍实现滑动功能
android 7.0中引入新的手势api:public final boolean dispatchGesture(@NonNull GestureDescription gesture, @Nullable GestureResultCallback callback, @Nullable Handler handler)
2021-06-10 16:21:09
4659
3
原创 抖音用户数据获取分析(未完成)
基于大牛的研究成果(https://blog.youkuaiyun.com/wql2014302721/article/details/110563695),使用Fiddler在安卓9手机上抓包,添加用户证书,抓不到包,将手机ROOT后,添加系统“信任的凭据”,抓包成功。 有了上面的抓包结果,如是想分析下具体的调用过程。用jadx-gui打开抖音的APK包(14.8.0),包比较大,要等待一会时间。抖音的请求基于Rxjava和Retrofit,但是Retrofit是字节跳动修改后的一个实现,...
2021-04-30 11:14:10
1521
原创 android kernel编译时,make menuconfig 如何指定默认的config文件
android有个专门的make bootimage命令可以编译出刷机包boot.img,进入fastboot模式,执行fastboot flash boot boot.img就可以将修改后的kernel刷入,这是最快的kernel修改验证方式,不需要刷整个安卓系统。不过手机必须是解锁bootloader的,或者是刷的DEBUG版系统。今天主要来说一下怎么修改kernel的配置。 (一)首先找出默认的config文件 sourcebu...
2020-12-07 16:53:25
4968
原创 Android Studio的Layout Inspector分析布局碰到的ID问题
在写一个无障碍的APP时,需要打开系统设置的一个界面,自然想到用Android Studio自带的Layout Inspector分析布局。电脑连接一个ro.debuggable=1的手机,打开手机的开发者模式,从Android Studio菜单“Tools” ==> “Layout Inspector”, 就打开了布局分析。点击“Select Process”选择你要分析的APP(如果没有发现设备就重启一下AS),稍等一会就可以看到布局信息了。我先修改这里的一些项目,用"com...
2020-11-03 17:08:28
1391
原创 android recovery模式支持ADB SHELL
项目上安卓系统在升级时,经常有不成功的情况,想看下recovery下的情况,recovery下adb shell又用不了,如是决定把adb shell功能加上,下次OTA出问题时好定位。安卓8.1系统,在debug模式下,有启动adbd服务,可以运行adb pull, adb reboot 等操作,但不能执行adb shell。修改涉及到二个部分,第一部分不管debug模式还是user模式,都启动adbd服务;第二部分是完善recoery的文件系统,我加了sh和busybox。(一)启动adbd服务
2020-09-24 21:19:18
2556
原创 采用安卓platform签名踩坑
在安卓上用com.yanzhenjie.andserver库实现了一个http server,以前一直好好的。最近由于要和另一个APP通信,改成使用系统的platform签名,结果HTTP服务不能启动,报错如下09-21 18:01:46.262 7588 7603 W AndServer: An exception occurred while registering components.09-21 18:01:46.262 7588 7603 W AndServer: java.
2020-09-21 22:16:59
415
原创 安卓8.1中HAL3的camera 传输流程
CAMERA的数据流总体涉及到几个层面:1)APP层 , 2)Framework层,3)HAL层,4)驱动层。下面主要分析2和3之间的数据流。安卓引入HAL3后,采用一个新的通讯方式HIDL,和以前的AIDL相似,都是用于进程间通信,只是HIDL是用硬件框架的通讯。Framework层正是使用这种新的方式与HAL层进行通信的。 1)Framework层的Camera3Device.cpp中有个camera3_callback_ops,有2个方法,HAL层数据通过它的2个方法回调回来。...
2020-08-20 18:39:40
772
原创 安卓手机通过USB连接路由器有线上网
安卓手机通过USB,连接到带USB口的定制路由器,在手机上进行设置后可实现有线上网。这个与普通的”USB网络共享”使用网络的方法是相反的,普通的是电脑共享使用手机的移动网络上网;这个是手机使用路由器接入的宽带网络上网,和WIFI连接路由器上网一样的效果,只是这是通过USB线上网。手机必须是ROOT的定制路由器购买操作步骤1. 手机上安装UsbNet购买路由器时会送该软件,安装过程就不多说了,和普通的应用安装方法一样。2. USB线连接到路由器手机自带的那种数据线就行,也可以通
2020-07-24 11:51:52
14859
1
原创 用jTessBoxEditor训练tesseract-ocr字库
tesseract-ocr的字库训练,用到的软件是jTessBoxEditor,该软件基于JAVA运行,所以你的机器上必须有JAVA运行环境. 准备JAVA运行环境,这个应该基本都知道怎么搞, 没有的去官网下载安装即可。JAVA运行时下载 下载训练工具jTessBoxEditor,FX的版本可以训练汉字,官网下载地址:jTessBoxEditor下载 先准备好包含文字的图片,如: eng.abc.exp0.png 将图片转换成TIF文件 打开一个cmd,...
2020-07-24 11:39:48
328
busyboxArm64.zip
2020-09-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人