自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 汉字占用两字节原因

后面又出现了大一统局面「Unicode」 字符集,但英文字符占用空间的大小将会是 ASCII 编码下大小的 2 倍,非常浪费内存空间.就出现了UTF-8,UTF-15,UTF-32等编码方法.大家感兴趣可以自行补充.「GBK」字符集是「GB2312」字符集的扩展,共收录了 21886 个汉字.在 GBK 编码方案中,ASCII 字符使用一个字节表示,汉字使用两个字节表示.「ASCII 码」是最早出现的字符集,它使用 7 位二进制数(即一个字节的低 7 位)表示一个字符,最多能够表示 128 个不同的字符.

2023-08-23 10:18:14 366

原创 LoudnessEnhancer音效增加自动关闭?

不出所料,搜索解决不了问题。然后根据日志,用小小的铲子在大大的源码里面挖呀挖呀挖,挖不动,只挖了大概位置,然后猜测应该得释放一下吧?没明白其中奥义,但我明白了资源申请了记得释放的道理!多欣赏了一会发现声音变小了,经过排查日志(Android10)发现耳朵没毛病。乍一看没毛病,测试下效果也不错。以为万事大吉,却不料被摆了一道!

2023-05-26 11:05:31 286

原创 unity 没有Generate all .csproj files?

网上很多关于这个问题,有人解答的,有的说正常了,有的仍没有解决,而我就是后者.最后才发现还是自己对工具的不熟悉!!!先看一下官方的说明明明说明中有,偏偏自己的没有,这就是最害怕的事情了乍一看,就是没有.后来指定了External Script Editor为VSCode后就出来了[泪奔][泪奔][泪奔]不说了,先emo一会…

2023-03-15 09:27:14 537

原创 android适配ipv6,请求慢?

华为手机,设置->移动网络->移动数据->接入点名称(APN)->新建一个APN,配置中的APN协议及APN漫游协议设置为仅ipv4或ipv6.最后排查运维申请了ipv6的地址,但没有申请ipv6的网关,运维在测试的时候只验证了服务器的ipv6访问通畅,却没有测试外部网络访问是否通畅。我们现在的问题是在解析到ipv6的ip时会出现请求巨慢.使用控制变量法,分别测试了仅ipv4协议及仅ipv6协议,怎么做?再次访问接口,仅ipv4的配置打印的只有ipv4的ip,访问速度正常!

2023-02-27 14:57:00 2057

原创 屏幕适配小结

先转载一篇文章对资源文件夹有一个基本结构了解:https://blog.csdn.net/yljme/article/details/40071593设备A的屏幕信息如下(不包括导航栏高度)设备B的屏幕信息如下(不包括导航栏高度)项目资源文件夹如下分析:因为是横屏,所以是value-land;因为设备A的densityDpi为240,所以会读取value-land-hdpi;因为设备B的densityDpi为320,所以会读取value-land-xhdpi;因为设备A的height为

2022-04-06 17:47:12 1972

原创 Android另辟蹊径开机自启动方案

当大家看到这篇文章的时候,应该已经看到过很多关于开机自启动的文章,大概可以归纳为开机广播方案、产商定制的自启动功能方案如文章标题,这篇文章会提到一种新的方案:无障碍开机自启动说到这里,大家应该也豁然开朗了,文章其实也该结束了。但是介于无障碍服务属于一个特殊的系统服务,我觉得有必要再多讲一点关于其授权的方法,毕竟网络上已经有很多文章教我们从0到1开启一个无障碍服务,但很少讲到如何授权。接下来,我会谈到无障碍服务的几种授权方案:(主要针对root或系统权限)1.普通应用跳转到系统

2022-03-04 11:39:20 3277 1

原创 华为开发者选项锁屏已被管理员、加密政策或凭据存储禁用

先说场景:采购了一批华为的pad(android 7.0.0),每次开机都有锁屏壁纸,所以可以在开发者选项中的锁屏选项中关闭该功能。但部分设备的该选项是灰色的无法操作(具体原因不明),根据网络上说的清凭证,设密码都无效。所以花了些时间研究,记录一下思路。前提是设备root了或者有系统权限,以下是设备root的情况处理:1.首先我对比了其他的设备,在开发者选项中未看到【锁屏】选项,以为这是华为自己定制的功能,由于没有源码。所以反编译了Settings.apk,其实这一步走了弯路,但还是记录一下,以下是我

2021-11-03 10:57:06 6592

原创 代码禁用自己集成的腾讯x5内核

腾讯x5官方文档:https://x5.tencent.com/docs/index.html其中未说明如何禁用x5内核,网络上有很多关于禁用的文章,但都是禁用微信的x5内核。于是通过文档上的调试模式,顺藤摸瓜,标准的初始x5组件:会在data/data/包名/下生成如下目录及文件:其中debug.conf文件就是关键。(以下是我禁用后的截图)于是在初始化后就增加了如下代码:(我想在android6.0及以上禁用x5内核,原因我就不说明了)完工。不用重启应用就可以达到目的,可以使用

2021-09-13 14:42:05 1109 3

原创 对release版本apk进行调试以及https抓包

这里不再分析其他情况,仅针对release版本处理;应用debug步骤:参考链接1.准备root的设备,安装Magisk,此步骤省略。。。。2.使用magisk指令修改:adb shellsumagisk resetprop ro.debuggable 1stop;start;应用抓包步骤:1.准备charles抓包工具,走抓包流程,在设置上安装证书,https乱码参考链接2.Magisk安装Move Certificates模块...

2021-09-03 17:37:04 10068

原创 泛型实际类型获取与生成

泛型类型获取文章摘自https://blog.csdn.net/qq_27070117/article/details/103069308clazz.getTypeParameters()如上代码,我给类TV声明了两个泛型V和T,而通过getTypeParameters()获取到的数组正代表类头部声明的泛型,我们可以通过getName()方法获取到声明时定义的字符串(这个例子中就是 V和T)clazz.getGenericSuperclass()clazz.getGenericSuperclas

2021-08-02 09:48:15 159

原创 异步任务工具

组件说明按组执行的异步任务导入依赖Step 1. 添加JitPack仓库到根目录build.gradle文件allprojects { repositories { ... maven { url 'https://jitpack.io' } } }Step 2. 在module添加依赖dependencies { implementation 'com.github.Doonkey:AsyncTool:2.0' }功能描述组与组串行,组内遵循

2021-08-01 17:33:25 148

原创 Android基于闹钟的定时任务组件

计划任务组件根据系统闹钟的定时任务,按任务的执行时间顺序依次执行,可动态添加及取消任务。不支持任务时间片重叠的场景基于开源项目修改,感谢作者:https://github.com/BolexLiu/TimeTask使用说明导入依赖Step 1. 添加JitPack仓库到根目录build.gradle文件allprojects {repositories {...maven { url '[https://jitpack.io](https://jitpack.io)' }}}

2021-07-30 11:39:07 225

原创 androidRoot刷机流程及问题记录

目录root流程问题记录文件下载地址root流程打开开发者选项,允许调试(具体打开方式不逼逼了) 打开oem解锁选项(遇到问题见下放) adb reboot bootloader进入fastboot模式(adb,fastboot工具下载也不逼逼了,见下方) fastboot oem unlock 或者fastboot flashing unlock解锁设备,因为前者指令有些执行错误 fastboot reboot或者手动重启设备 再次进入到fastboot模式,fastboot

2021-07-02 15:37:35 511

原创 Root设备提取system.img

先确认system分区所对应的路径(部分设备中的bootdevice路径可能不同,自己cd确认准确路径)/dev/block/platform/bootdevice/by-name列表如下,找到system分区及其他分区所对应的路径adb shell su dd if=/dev/block/mmcblk0p37 of=/sdcard/system.img同理可以提取出boot.img以及recovery.img等镜像文件附上一篇fastboot刷机文章:https://bl.

2021-07-02 14:35:57 1457

原创 fastboot找不到设备?一直wait for device?

有时adb reboot bootloader进入到fastboot模式就找不到设备了,有可能是硬件类型选错了。当然这只是其中的一种原因,供大家参考:1.打开设备和打印机,右键删除设备2.打开设备管理器,在其他设备中找到设备并更新驱动程序一步步继续操作即可...

2021-06-23 16:23:10 7720 2

原创 Android应用内无需权限悬浮窗

Android悬浮窗的开源库有很多,之前一直使用的FloatWindow,也非常好用!这个库支持应用内以及应用外悬浮窗,只是在高版本中需要申请悬浮窗权限,有时并不需要应用外悬浮窗,但在高版本仍旧需要申请权限,就有点不对劲了!所以参考了其他的开源项目,自己又整理了一个简单好用的开源悬浮项目,欢迎大家指正纠错!项目地址先贴上:https://github.com/Doonkey/DkFloatingView下面就大概说明一下这个项目应用内悬浮窗,低侵入性,无权限申请,简单配置,全局可用,

2021-05-17 14:28:57 3014 4

原创 android View扩大触摸选区

viewGroup.post(() -> { Rect rect = new Rect(); view.getHitRect(rect); rect.left -= 30; rect.top -= 30; rect.right += 30; rect.bottom += 30; TouchDelegate touchDelegate = new TouchDelegate(rect, view); viewGroup.setTouchDeleg

2021-05-14 11:14:28 288 1

转载 小米usb当前设备已被临时限制3-2

网络上都是换卡换账号操作,如果没用则尝试下下面的链接,前提是root,百试百灵,修改后重启手机或者强制重启com.miui.securitycenter应用转载https://blog.csdn.net/z920981023/article/details/110207265

2021-03-25 09:39:10 8730

原创 TextView处理滑动冲突复盘

平常在ViewGroup中放一个textView组件,无可避免会出现textView内容过多而需要解决滑动冲突的问题.大多数的做法就是再嵌套一个ScrollView来处理滑动冲突,而之所以用ScrollView的考虑无非就是处理是否滑动到边界,这么想想感觉不值得!网上有很多介绍如何让TextView加载多内容时可滑动的文章,但是很少有解决其滑动冲突的文章.今天就不说怎么支持滑动了,因为只是加一句textView.setMovementMethod(ScrollingMovementMeth

2021-03-23 10:16:38 367 1

原创 ViewPager禁止滑动

重写onInterceptTouchEvent(MotionEvent ev){}public class UnScrollableViewPager extends ViewPager{ @Override public boolean onInterceptTouchEvent(MotionEvent ev) { if (isScrollble()){ return super.onInterceptTouchEvent(ev); }else {

2021-03-08 10:16:36 297

原创 Androrid O+开启Service问题记录

直接上测试结论:android O及更高版本1.startService()开启的service受后台限制. 在后台60s后通过startService()会抛异常; 通过startService()开启的service退到后台后60s会自动onDestroy();2.bindService()不受后台限制. 但bindService()受当前activity的token影响,如果当前activity已经销毁,则无法bindService(),如果已经bindService

2021-03-05 10:43:56 684 1

原创 RxJava并发请求记录

看过一些关于RxJava并发的文章,终究还是自己测试一下比较心安,根据这篇博客测试几个常见的实现https://www.jianshu.com/p/6f428b52555a首先来2个Observable备用,当然.subscribeOn(Schedulers.newThread())这个少不了,不然都在一个线程哪来的并发.private List<Observable<String>> initObservables() { List<Observab

2021-01-08 09:40:03 396

原创 解决GlideApp无法生成问题

标准的流程如官方文档,不做解释:https://muyangmin.github.io/glide-docs-cn/doc/generatedapi.html但仍有无法自动生成,前一秒没问题,稍稍改了代码就不行了呢?思来想去,网上也提到了apt与annotationProcessor之间的冲突,但我都改用annotationProcessor了结果还是无法自动生成,折腾了半天就在错误日志多看了几眼,发现稍稍改了代码,把全局常量被改动了,导致编译也不能通过.想了想死马当作活马医,先把常量改正确了.后来就

2020-12-29 16:44:56 821

翻译 设置recyclerView最大高度

simple layout:<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="matc.

2020-12-25 09:32:03 1432

原创 android system挂载

前提操作是系统必须root!各种尝试方法:方法一:adb remount若失败尝试方法二!方法二:adb rootadb remount若失败尝试方法三!方法三:mount -0 rw,remount /system若失败尝试方法四!前提oem解锁adb rootadb disable-verityadb rebootadb remount...

2020-12-17 08:57:18 3486 2

原创 adb远程调试记录

收藏链接:https://www.cnblogs.com/clovershell/p/10684053.html0.前提:已经接入相同局域网,并且设备设有局域网的IP地址1.连接USB数据线,打开usb调试,使用windows的“运行”命令行方式:(此方法需配置adb环境变量,也可直接进入adb工具目录执行\android-sdk-windows\platform-tools\)adb tcpip 5555 (端口号)adb connect 192.168.9.194.199 (Androi

2020-12-16 11:37:31 120 1

原创 FBreader多端同步心得补充

接上篇继续,说到通过已知的属性id取到对应的位置,却没有解决根据当前阅读页的段落位置或者笔记位置取到其属性id.这样就会造成一个问题,我只能用其他端的id来跳转到指定的位置阅读,自己却没有属性id来表示同步位置.后来又无脑的翻找已一下,在JavaNativeFormatPlugin.cpp中找到相关的代码,initInternalHyperlinks()方法中的model.internalHyperlinks()就是存储了属性id与段落位置,在上篇中取到的id实际上也是这里持久化的产物.那么我只需将此处的

2020-11-20 15:47:24 267

原创 FBreader问题记录及多端同步心得开篇

android端做过epub阅读器的小伙伴应该对这个都不陌生了,可谓是又爱又恨.既爱其强大,又恨自己看不懂(可能只是我一人).我先讲下背景,公司是做数字阅读的,而我们选择了FBReader作为epub的文件解析器,在我接手之前已经用了好几年了(公司之前的大佬集成进去的),而我(不会c++的android菜鸡)来的2年期间也没有深入了解过.随之而来的就是慢慢的折磨,遇到了以下几个问题.一是新制作的epub结构不兼容FBReader结构导致无法阅读,那时排查了3天才发现是解析路径出了问题,最后勉强修复了这个

2020-11-19 16:53:14 617 1

原创 android引用系统res资源

anroid直接应用系统资源,编译无法通过,此时可以通过反射或者系统提供的api来获取资源对象.Resources.getSystem().getIdentifier(String name, String defType, String defPackage);eg:int layoutRes = Resources.getSystem().getIdentifier("transient_notification", "layout", "android");View la.

2020-11-16 11:27:34 442

原创 android studio找不到javax.xml.stream.*问题记录

stream包在jdk1.5以上开始支持,网上大都是升级jdk版本.但本地已是1.8版本,且项目也设置为1.8版本,但始终无效.最后在这边博客中找到办法直接依赖本地jar文件即可!![在这里插入图片描述](https://img-blog.csdnimg.cn/20201112102612656.png#pic_center)链接地址:https://blog.csdn.net/jhope/article/details/80841682...

2020-11-12 10:27:52 1000

原创 WebView问题:not defined;canGoBack()不准;onPageFinished()不准;webview输入法焦点遮盖

WebView中道不明的问题

2019-12-11 17:09:48 3177 1

原创 pem与.pk8转platform.keystore方法

拿到系统签名通常是这样的或者是(当然是删减版核心版了)那我们想要怎么办????接下来梳理一下步骤:1>在Liunx下执行,其中${dir}为签名所在文件位置,需要替换为你的真实路径openssl pkcs8 -in /${dir}/platform.pk8 -inform DER -outform PEM -out /${dir}/shared.priv.p...

2019-08-13 15:23:57 1652 1

原创 android之app_process简单记录

该篇不针对app_process做解释,主要记录其在android中的应用:app_process独立运行在java进程,android可通过shell命令调用,主要解决权限拒绝的问题,需要注意的是调用系统api需要root权限。并不是拥有root权限就可以为所欲为,但配上一个app_process真的基本上就可以为所欲为,开启一个app_process进程具体命令为:String c...

2019-07-22 10:17:49 3440

翻译 adb命令之service call

最近对service call指令参数比较疑惑,特此搜集了一下资料,解释并记录如下:需要特别说明的是android版本不同,其CODE值可能不同原文网址:https://stackoverflow.com/questions/20227326/where-to-find-info-on-androids-service-call-shell-commandservice说明如下:...

2019-06-13 17:27:33 11061 2

原创 apk图片修改方案

安装型(针对未签名apk) 使用压缩软件直接打开apk文件,替换图片即可,注意图片名称必须相同 push型(针对已签名apk) 以下教程仅针对小白,高手根据原理自行处理 对于修改已签名的apk由于不能通过验证,则无法安装,根据android系统应用安装机制,可知从data/app入手,所以有一个硬性条件就是设备必须root!

2017-09-04 19:49:07 4200

内网穿透frp之android依赖aar

基于frp0.50.0版本编译的android全架构依赖库aar,下载后直接导入AS工具使用. 首要步骤当然是部署好frps. 然后才是客户端的事情: 启动:Frpclib.run(String configPath) 断开:Frpclib.close(). 如有疑问,欢迎评论留言交流

2023-07-03

空空如也

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

TA关注的人

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