自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 临时开启设备的root权限

adb remount (设备升级版本后第一次执行此命令会执行失败,如果执行失败,会在下面提示执行adb disable-verity,那就执行adb disable-verity,之后执行adb reboot重启,重启完后重新第4步开始操作)设备开启 开发者模式 并 开启USB debugging。adb connect 设备ip。

2024-04-10 15:35:47 104

原创 Android的adb局域网连接

1、首先执行adb shell setprop persist.internet_adb_enable 1,打开网络调试。一般以上三步应该可以连接成功,如果连接不成功,可以先插上usb与安卓设备连接,重新执行以上三步骤。

2024-03-08 15:25:44 173

原创 JNI NewGlobalRef called with pending exception java.lang.UnsatisfiedLinkError

在项目当中如果引用到第三方sdk或者jni调用,如出现以上异常原因,有可能运行当中没找到指定类或者方法,可以检查项目是否启动混淆,把一些类或者类中的方法、成员移除掉了,可以尝试保留指定类或者类中的方法或者成员。

2023-08-03 15:06:48 633

原创 微信Xlog日志解密

解码微信xlog日志

2023-07-21 16:05:05 2119 1

原创 Android的图片分辨率和质量优化

对于图片性能优化读者,想必也了解了图片优化原理,所以直接上代码,记录方便日后使用。

2023-07-06 11:57:19 306

原创 Android使用adb和PackageInstaller两种方式安装apk

PackageInstaller安装方式。简单实现的一个案例,直接上代码。

2023-07-05 17:10:32 1246 1

原创 Android无障碍服务器使用

accessibilityEventTypes:响应的事件类型(单击、长按、滑动、通知等)accessibilityFeedbackType:回显给用户的方式(例如:配置TTS引擎,实现发音)accessibilityFlags:很关键,你的应用程序需要获取哪些信息。4、最后步可以在继承Application类中调用,这个方法是打开无障碍服务,这样可以在自己实现的AccessibilityService类中监听系统按键事件、或者其他应用界面信息和状态等。2、清单文件中需要加入以下权限和service定义。

2023-07-05 16:52:21 654

原创 flutter环境搭建遇到的问题

flutter环境搭建

2023-01-31 16:40:25 251

原创 adb查看系统的进程优先级

adb查看进程的优先级

2022-11-08 18:21:00 756

原创 Android的四种启动模式

Android的四种启动模式

2022-11-05 22:35:33 8007

原创 Android的Handler原理

Handler消息机制

2022-11-04 23:47:59 783

原创 如何在chrome浏览器设置夜间模式

谷歌浏览器夜间模式设置

2022-10-28 17:23:18 10849

原创 Java的atomic包下的CAS原子操作类原理

java并发编程的CAS

2022-09-23 16:39:40 512

原创 Android中的双端队列数据结构ArrayDeque原理

Android中的双端队列数据结构ArrayDeque原理

2022-09-22 16:00:08 742

原创 Jenkins在win10系统的安装

在win系统上安装Jenkins

2022-06-13 10:38:18 565

原创 as使用Git指令远程或者本地创库代码合并

如果在as已经打开一个fork指定分支的项目,想合并所fork的主创库指定分支,如果在gitlab中请求合并出现冲突,会显示一个merge locally按钮,点击改按钮弹出一下弹窗:可以在as的Terminal按照上图的git指令操作:步骤1。获取并检出此合并请求的分支git fetch "https://gitlab.xxxxx/xxxx/app-android.git" maingit checkout -b "xxxx/android-main" FETCH_HEAD步骤2。查

2022-02-18 10:29:07 1648

原创 Android集成sentry坑

sentry官网网址:Android | Sentry Documentation集成sentry的时候可能遇到这个异常: java.io.IOException: Cleartext HTTP traffic to XXX not permitted因为从Android 6.0开始引入了对Https的推荐支持,与以往不同,Android P的系统上面默认所有Http的请求都被阻止了。解决的办法简单来说可以通过在AnroidManifest.xml中的application显示设置:&lt..

2022-01-17 15:16:58 2330

原创 win10重装系统

下载云速装机大师一键安装,而且重装的系统都是默认激活的。

2022-01-01 20:34:40 267

原创 如果使用git克隆远程创库,pull提示Can‘t update master has no tracked branch

如果pull操作时,使用git命令:git branch --set-upstream-to masterorigin/master,如果还提示提示master->fatal: branch ‘master’ does not exist。则输入以下指令:git pull origin master --allow-unrelated-histories

2021-12-16 09:56:12 788

原创 android使用aspectjx踩的坑

1、在根目录的build.gradle中加入:classpath 'com.hujiang.aspectjx:gradle-android-plugin-aspectjx:2.0.10'2、如果使用了kotlin代码需要在项目的app的build.gradle中的头部加入:apply plugin: 'kotlin-android'apply plugin: 'kotlin-android-extensions'apply plugin: 'kotlin-kapt'3、在..

2021-12-14 11:42:43 3175

原创 andorid什么时候会销毁

第一种是正常的销毁,比如用户按下Back按钮或者是activity自己调用了finish()方法; 另一种是由于activity处于stopped状态,并且它长期未被使用,或者前台的activity需要更多的资源,这些情况下系统就会关闭后台的进程,以恢复一些内存...

2021-11-02 15:29:30 197

原创 Andorid依赖包冲突文件解决

1、过滤多个相同的文件 packagingOptions { //重复依赖了这个包,但无法找到在哪里,先这样处理,表示 使用第一个 pickFirst 'org/apache/poi/ss/formula/function/functionMetadata.txt' pickFirst 'font_metrics.properties' pickFirst 'org/apache/poi/ss/formula/function/fun.

2021-10-22 09:56:27 984

原创 Android使用切片编程库后,同时依赖kotlin写sdk,可能出现编译项目不同问题。

进入app的build.gradle文件中,可以尝试在头部的apply plugin: 'com.android.application'行代码下面加入以下代码,这个问题也是在刚好下班时遇到,正好是项目赶着提测,由三人小组加班寻找解决方案,最后才找到这个解决方案,加油。aspectjx { exclude "**/module-info.class" exclude "META-INF.versions.9.module-info" exclude "META-INF/versi.

2021-09-23 11:32:25 311

原创 Andorid中的dex文件使用dex2jar工具反编译

dex2jar 的安装(以 Windows 为例)dex2jar的下载地址: https://sourceforge.net/projects/dex2jar/ 将下载的 dex2jar-2.0.zip 压缩文件直接解压到任意文件夹下。 将 dex2jar-2.0 文件夹的路径配置到 PATH 环境变量中去。 在命令行窗口输入 d2j-dex2jar 命令按回车键后,打印如下图信息,表示安装成功。 输入 d2j-dex2jar 命令.pngdex2jar 反编译

2021-09-04 14:51:58 672

原创 Android的事件分发机制

1. 基础认知1.1 事件分发的对象是谁?答:点击事件(Touch事件)定义当用户触摸屏幕时(View 或 ViewGroup派生的控件),将产生点击事件(Touch事件)Touch事件的相关细节(发生触摸的位置、时间等)被封装成MotionEvent对象事件类型(4种)事件类型 具体动作MotionEvent.ACTION_DOWN 按下View(所有事件的开始)MotionEvent.ACTION_UP 抬起View(与DOWN对应)MotionEvent.AC...

2021-09-04 14:46:01 79

原创 Android的性能优化

Android性能优化主要有四个方面:1、稳定(内存溢出、崩溃)2、流畅(卡顿)3、耗损(耗电、流量、网络)4、安装包(APK瘦身)

2021-09-04 14:45:11 435

原创 远程主机强迫关闭了一个现有的连接

在win10电脑中,按快捷键win+R,打开cmd,然后输入netstat -aon | findstr "5037",找到占用5037端口的pid,然后再任务管理器中找到这些pid,结束掉这些pid进程就可以。

2021-08-19 11:39:37 752

原创 组件化

什么是组件化组件化就是由多个mudule组成的应用,达到代码和资源的隔离,每个模块都可以独立运行或者打包调试能力。1、各个组件专注与自身功能的实现,模块中代码高度聚合,只负责一项任务,也就是常说的单一责任原则;2、各业务研发可以互不干扰。提升协作效率;3、业务组件可进行拔插,灵活多变;4、业务组件之间将不再直接引用和依赖,各个业务模块组件更加独立、降低耦合;5、加快编译速度,提高开发效率;组件化架构图设计模块介绍1、App壳:负责管理各个业务组件和打包APK,没.

2021-05-24 23:38:29 108

原创 Android的四种启动模式

前言Android的Activity的启动启动模式在面试也是常常被问到的,本人面试几家公司都有问到,比如面试管问:当在应用中的ActivityA跳转到ActivityB,然后按下home键跳到桌面,这时当点击应用图标回跳到应用,当前应用显示的是哪个Activity?面试管问这样的问题可能是考你关于Activity的启动模式的了解,其实面试管想知道四种启动模式分别会产生什么结果。首先举例一个特殊的启动模式,如如果ActivityB的启动模式是singleInstance,回到应用当前展现的视图是Activ

2021-05-19 23:28:40 230

原创 关于自定义View

面试中常问到的技术点:自定义View 数据结构 性能优化面试题:如何实现自定义View?回忆一下,你去面试时常被问到的自定义View方面的问题是那些。有没有:invalidate和postInvalidate方法的区别?自定义View的绘制流程?View的Touch事件分发流程?因为在实际的工作中并不是每个人都会涉及UI的实现,所以有些人没有做过自定义View并不能否决这个人在Android开发上的能力,包括会问你这方面问题的面试官也可能并没有自定义View的经验。所以很.

2021-05-15 01:35:59 80

原创 Android的BroadcastReceiver的使用和两种注册方式

Android广播分为两个方面:广播发送者和广播接收者,通常情况下,BroadcastReceiver指的就是广播接收者(广播接收器)。广播作为Android组件间的通信方式,可以使用的场景如下:1.同一app内部的同一组件内的消息通信(单个或多个线程之间);2.同一app内部的不同组件之间的消息通信(单个进程);3.同一app具有多个进程的不同组件之间的消息通信;4.不同app之间的组件之间消息通信;5.Android系统在特定情况下与App之间的消息通信。静态注册:定义一个广播接收器继

2021-05-15 00:40:39 768

原创 Android的adb指令使用

Android应用安装涉及到如下几个目录:system/app系统自带的应用程序,无法删除。data/app用户程序安装的目录,有删除权限。安装时把apk文件复制到此目录。data/data存放应用程序的数据。data/dalvik-cache将apk中的dex文件安装到dalvik-cache目录下(dex文件是dalvik虚拟机的可执行文件,其大小约为原始apk文件大小的四分之一)。安装系统应用adb rootadb remount解释:将 '/system' 部..

2021-04-29 10:21:31 564

转载 Android 开发中如何动态加载 so 库文件

Android 开发中如何动态加载 so 库文件(转载)动态加载的优点静态加载,不灵活,apk 包有可能大。所以采用动态加载 so 库文件,有以下几点好处:灵活,so 文件可以动态加载,不是绑定死的,修改方便,so 库有问题,我们可以动态更新。 so 库文件很大的话,采用动态加载可以减少 apk 的包,变小。 其实我们常用第三方 so 库,单个可能没问题,如果多个第三方 so 库文件,同时加载可能会出现冲突,而动态加载就能够解决这一问题。注意路径陷阱动态加载 so 库文件,并不是说可以

2021-04-28 22:05:39 2711

空空如也

空空如也

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

TA关注的人

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