![](https://img-blog.csdnimg.cn/e7a9ba7fd6d34ee3a7222b4199f5b8b3.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Android
文章平均质量分 55
个人笔记
湘菜馆航空科技顾客
这个作者很懒,什么都没留下…
展开
-
华为联运:资源混淆导致的浮标显示异常
正常情况,华为联运包登录成功之后会显示,拖动浮标会出现而在我们的游戏中,遇到有部分内容被遮挡了,导致被拒审。粗略看上层遮挡部分的高度正好等同于状态栏的高度,一开始怀疑是否设置全屏或水滴屏、刘海屏适配问题,经大概测试似乎不是。原创 2024-06-20 16:30:50 · 261 阅读 · 0 评论 -
R 文件优化插件:Binary XML file in layout Error inflating class
InflateException 在 Android 中我们遇到的通常发生在自定义 View 创建中,动态加载布局一般使用。原创 2024-06-15 01:47:45 · 437 阅读 · 0 评论 -
AGP7+ 适配 plugin 动态引入第三方插件
在 AGP4+ 如果仍然使用上述代码,那么编译期会报错,升级版本之后使用下面的。原创 2024-06-11 21:34:04 · 139 阅读 · 0 评论 -
AGP4+ 打包运行闪退,AGP7+ 正常(has code but is marked native or abstract)
安装应用,点击图标启动立马闪退!诡异的闪退:AGP4+ 打包运行闪退,AGP7+ 正常日志两个主要点:com.android.boot.App 是 Android 的 application 子类,程序入口o0o0O0o/OOO0oo/Ooo0oo/Ooo0oo/o0OOo0oo/oOo0o 是混淆之后的一个类(类名)反编译查看安装包,上述两个日志说不存在的类,包里面确实是都存在的,那很奇怪为什么还报错找不到类?原创 2024-06-08 18:29:34 · 688 阅读 · 3 评论 -
升级到 AGP7+,适配 assets 目录了吗
我们知道 assets 文件处理的任务是在 AGP 升级过程中,不同的 Android Gradle Plugin 版本打包过程中可能存在不一致的情况!原创 2024-05-10 12:21:15 · 353 阅读 · 0 评论 -
AGP8+ android.useNewApkCreator‘ is deprecated 打包失败
我们都知道,project.properties 属性值主要数据来源是 gradle.properties 配置文件。果不其然,通过磁盘全局搜索发现一个醒目了路径下存在这个文件,打开一看正如我所想,注释掉之后再运行不再报错了~新建一个项目,默认使用最新版的 AGP 和 Gradle,打包构建立马失败!我们通过在 build.gradle 文件输出属性配置,文件内配置了该属性,并且这个文件是每个项目都会读取的?全局搜索,当前项目确实没有配置该属性。这或许是 AS 的默认配置文件吧。,这属性到底是哪里来的?原创 2024-06-03 16:16:09 · 403 阅读 · 1 评论 -
微信资源混淆,导致的约束布局 Constraintlayout 控件重叠!
虽然我不参与广告 sdk 接入等先关工作,但是最近总是听到一个词广告六要素。这到底是什么?国内下载类广告,尤其是针对移动应用推广的广告,其成功实施往往围绕几个关键要素进行,这些要素能够帮助广告主更有效地触达目标用户,促进应用下载。下图以荣耀广告为例,原创 2024-05-27 18:24:21 · 1585 阅读 · 0 评论 -
打包要求 minCompileSdk 使用指定版本及以上
androidx.appcompat:appcompat:1.0.0 间接依赖了,但是被其他因素强制升级依赖。那么如果我不想升级 compileSdkVersion 应该怎么办?我当前的 compileSdkVersion 30,因为依赖了。它要求最低 compileSdkVersion 33。core:core 版本内部依赖了。看看谁依赖了这两个版本。原创 2024-05-25 14:37:50 · 316 阅读 · 0 评论 -
鸿蒙 DevEco Studio 代码补全没提示?
安装完 DevEco Studio 看了看文档顺藤摸瓜,想着修改属性 Look Look 👀。想起了很久很久之前刚学 Android studio 时也是如此。现代码农真的很需要代码提示、补全,这个功能就不能默认开启吗?原创 2024-02-27 22:49:01 · 591 阅读 · 0 评论 -
从 Apk 提取代码到单独 dex
Android 中动态加载通过动态加载 Dex 文件,可以实现更加灵活和可扩展的功能,可以编写插件或模块化的代码,并在运行时根据需要加载它们。是 Android 中的一个类加载器,用于动态加载包含 Dex 文件的 jar 或 apk 文件,它的工作原理大概是:加载 Dex 文件,DexClassLoader 会从指定的路径中读取 Dex 文件,并将其加载到内存中… …无序过多描述,我们知道它可以加载 dex 文件即可。原创 2024-01-25 22:51:32 · 999 阅读 · 0 评论 -
Android PendingIntent 闪退
先来给大家推荐一个我日常会使用到的图片高清处理在线工具,主要是免费,直接白嫖。有时候我看到一张图片感觉很不错,但是图片清晰度不合我意,就想有没有什么工具可以处理让其更清晰,网上随便搜下就能找到,但是搜出来的很大可能是需要付费,这里便发现了两个比较好用的值得推荐,或许它每天对免费用户有一定的限制,但对于我每天可能也就处理不超过三张图片足矣,批量处理很可能还是付费吧!这里对比可能不容易看出效果,最好实际操作。原创 2024-01-16 16:59:58 · 686 阅读 · 0 评论 -
听说 TBS x5 Webview 加载 H5 游戏提示申请相机权限
现如今,渠道上架应用或游戏,对敏感信息合规检测还是比较严格的,一般都会采用自动化 + 人工检测。比如上架审核一个无需相机和录音权限的包体,绝大部分会遭到拒审(除非漏检?本次遇到的就是类似情况,内嵌 H5 的 Unity 游戏,之前是使用原生的 WebView 加载 H5 游戏,可是实际运行发现加载速度未达到预期效果,调研发现 X5 WebView 据说还可以(有质的提升?(图:来自官方)好了!!!原创 2023-03-13 12:29:40 · 674 阅读 · 0 评论 -
简单粗暴解决:Invalid row number (65536) outside allowable range (0..65535)
更文件保存后缀。原创 2023-03-06 13:22:30 · 1073 阅读 · 0 评论 -
gson 解析异常:NumberFormatException
没有相遇、不擦出火花、就不会有进一步了解的需求、不解决问题、也就不会长 ‘知识’送你两张我今天看到,认为好美的壁纸 😊原创 2023-03-04 22:48:42 · 342 阅读 · 0 评论 -
解决 NestHost requires ASM7 (shrink、kotlin metadata)
尝试使用不同的三个版本看看,结果令人失望,还是埋头解决 ASM7 吧。既然是一个可选的配置项,跟定不是写死的,那就一定有地方可配置!shrink transformClasses 总算是编译通过。嵌套类(外部类):可以在一个类的内部定义另一个类(内部类)查看得知 shrink 默认使用的是。但是别高兴太早,下面还有一个错误呢!发版本过程中一番折腾竟然没有成功!先升级一波版本再看看,我当前的版本。看看最新稳定版本,升级看看。原创 2023-02-20 17:55:59 · 2513 阅读 · 0 评论 -
系统应用 odex 转 dex
说下为什会有这个需求,以某系统应用为例,我们通过 adb 获取到的 apk 反编译查看只有少部分代码和资源,关键代码看不到。原创 2023-02-13 11:39:12 · 928 阅读 · 0 评论 -
Android + Frida 查看 AndroidID 获取情况
【代码】Android + Frida 查看 AndroidID 获取情况。原创 2023-02-09 11:51:23 · 673 阅读 · 0 评论 -
拖动安装包直接安装到手机
工具原创 2022-11-21 14:19:49 · 102 阅读 · 0 评论 -
Android 源码 <Activity> 桌面启动二 [6]
Read The Fucking Source Code. —— Linus 站在'巨人'的肩膀上开始自己的旅途。—— 佚名 愉快的周末,从打开💻开始,到骑行归来结束。—— 佚名原创 2022-08-22 09:20:17 · 879 阅读 · 0 评论 -
Android 源码 <Activity> 桌面启动一 [5]
Read The Fucking Source Code. —— Linus 站在'巨人'的肩膀上开始自己的旅途。—— 佚名 愉快的周末,从打开💻开始,到骑行归来结束。—— 佚名原创 2022-08-22 09:14:33 · 1065 阅读 · 0 评论 -
Android 源码 <package> 了解 [4]
Read The Fucking Source Code. —— Linus 站在'巨人'的肩膀上开始自己的旅途。—— 佚名 愉快的周末,从打开💻开始,到骑行归来结束。—— 佚名原创 2022-08-22 09:12:37 · 644 阅读 · 0 评论 -
Android 系统启动 <System server> 服务 [3]
Read The Fucking Source Code. —— Linus 站在'巨人'的肩膀上开始自己的旅途。—— 佚名 愉快的周末,从打开💻开始,到骑行归来结束。—— 佚名原创 2022-08-03 14:12:36 · 979 阅读 · 0 评论 -
Android 系统启动 <init 进程> 笔记【1】
Android启动创建并执行init进程,init进程通过解析init.rc文件创建或启动其他的进程或服务。开始第一阶段初始化,接着建立SELinux机制,之后执行第二阶段初始化,之后又去哪里执行?init.rc文件的内容在哪里?具体内容是怎么样的有哪些东西?带着这些问题,下一篇找出init.rc文件,继续启动过程的源码阅读。......原创 2022-07-20 08:45:57 · 637 阅读 · 0 评论 -
从 smali 接入第三方 sdk
A:为什么搞 smali 接入这么复杂,这不是给自己找坑吗?B:有时候真的存在这种场景,也是无措之举...A:既然你已有 apk,可以把它转换为 java 代码,在 java 代码上接入不更清晰、省事,免除遇到很多未知的坑,咋不这么干?B:好像...也 可 以?A:我觉得可以,借助 AndroidFk 工具可以直接从 apk 中反编译出 java 代码,当然————如果是加固、加密的 apk 可能就没那么容易了!!!B:我觉得也是,在 java 代码上接入方便多了。B:我是有点想不明白,我遇到的原创 2022-06-06 13:16:22 · 810 阅读 · 1 评论 -
Class类版本差异引起的闪退
详细日志比较多,便列举在了最下方,有需要可以查看此代码在 Android 10、Android 11 运行没问题,哈哈哈哈,可以发版本了唉!正好覆盖测试没有覆盖 Android 9、8、7、6 等版本的设备,蹭蹭蹭测试验收通过之后出包提审坏了!坏了!提审没有通过被拒原因是启动出现闪退,闪退的机型是 EMUI5.1.0(P10)Android 7 不是测试通过了么,怎么启动闪退竟然不可以运行,为什么呢?版本测试覆盖不全,真的难常规操作,连接 adb 查看日志吧两个不同原因描述的 Caus.原创 2022-05-17 21:37:10 · 2253 阅读 · 0 评论 -
glide 版本不匹配导致打包错误
glide 版本:4.12.0、4.9.0java.lang.NoSuchMethodError: No virtual method diskCacheStrategy(Lcom/bumptech/glide/load/engine/DiskCacheStrategy;)Lcom/bumptech/glide/request/RequestOptions;in class Lcom/bumptech/glide/request/RequestOptions;or its super classe.原创 2022-05-13 12:05:42 · 691 阅读 · 0 评论 -
【你 & 我 & 字节码】的一次黄昏邂逅
认识jclasslib和Hello world那年那个熟悉的 Hello world工具下载地址:jclasslib tool from github 还记得 N 年前,在哪夜黑风高的夜晚,自己手动完成的第一个 java 程序吗?想必很多人的第一个 java 程序都极为相似,从此踏上了一条 不归路。Test.javapackage primer;//比如 Test 类的组成://主版本号 + 常量池 + 访问标识 + 当前类签名 + 父类签名 + 接口集合 + 方法集合 + 字段集合 +原创 2022-05-12 10:47:46 · 336 阅读 · 0 评论 -
我有一个第三方 jar 包,咋们一起修改 class 文件吧
你有遇到适用的场景吗你有没有遇到需要修改 class 文件重新打包的场景呢?巧得很,最近刚好遇到需要修改一个已存在的 jar 包,为了满足自己的需求,不过对于 class 文件修改的是比较简单的字符常量,尚未涉及到比较复杂的逻辑,用于记录一下如何修改,如何快速修改完成需求,希望可以抛砖引玉,剩下的较为复杂的逻辑修改就交给你们了 😃比如我有这样一个修改 class 文件的场景:问题:某弹窗文本显示不正确描述:此弹窗代码是在某第三方 jar 包里,显示内容格式是: 客服:配置内容,.原创 2022-05-09 17:26:31 · 3227 阅读 · 0 评论 -
仓库配置先后顺序,导致依赖加载失败
错误日志Could not get resource ‘https://dl.bintray.com/ironsource-mobile/android-sdk/cn/m4399/sdk/operate/3.2.0/operate-3.2.0.pom’.Could not HEAD ‘https://dl.bintray.com/ironsource-mobile/android-sdk/cn/m4399/sdk/operate/3.2.0/operate-3.2.0.pom’.Received .原创 2022-05-07 10:22:20 · 396 阅读 · 0 评论 -
gradle 发布版本出错了,怎么会这样?
gradle upload 任务发布版本错误日志Execution failed for task ':uploadArchives'.> Could not publish configuration 'archives' > Must specify a repository for deployment解决之前 gradle.properties 文件中配置了如下,注释掉了能够发布版本了## 加快编译打包## 编译时使用守护进程#org.gradle.daemo.原创 2022-05-06 18:15:04 · 1377 阅读 · 0 评论 -
python pdfminer PDFTextExtractionNotAllowed 找不到
项目中之前一直都是如下导包,未曾改动过,在此之前都是好好的能够运行,直到今早…很早的来到公司(六点四十的闹钟没关,七点到了公司),开心的打开 Pycharm ,点击运行~~~~竟然报错了在运行之前我下载了 tabula-py依赖,想要实现 PDF 提取表格的需求,开始怀疑是不是这个库导致的冲突一番卸载(tabula-py)、重启(PyCharm 程序员:重启能够解决 99% 问题的直觉,肯定不是我的问题,一定是环境问题,之前还好好的,怎么突然就不行了呢)、更新(pip install --upgr.原创 2022-05-06 09:27:11 · 3606 阅读 · 3 评论 -
一个关于穿山甲广告 native 崩溃分析
Hello 村长1、 崩溃日志日志 1关键日志Failed to register native method com.bykv.vk.component.ttvideo.player.TTPlayer._close(J)V in base.apkttvideo :其中 tt 标识头条,可知是头条广告 SDKFailed to register native method:看样子是 so 相关详细日志Failed to register native method com.bykv.原创 2022-04-22 12:19:20 · 10789 阅读 · 0 评论 -
全屏 dialog 实现,以及刘海屏和底部导航栏适配问题
Hello 村长1、效果图适配前状态栏和导航栏都不适配:上下两边都显示下层界面状态栏不适配:虽然状态栏信息不显示,但是 dialog 没有覆盖全屏,仍然显示下层界面目前测试机型有:水滴屏、摄像头挖孔屏导航栏不适配:导航栏还在,不是全屏状态适配后Dialog 全屏适配2、代码实现 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);.原创 2022-02-24 11:07:53 · 1373 阅读 · 0 评论 -
文件格式错误导致的 android gradle 打包失败 preReleaseBuild failed
Hello,村长1、错误日志Execution failed for task ':app:pre【变体名称】ReleaseBuild'.> No signature of method: java.lang.String.name() is applicable for argument types: () values: [] Possible solutions: take(int), take(int), any(), any(groovy.lang.Closure), wait.原创 2022-02-22 17:44:02 · 1207 阅读 · 0 评论 -
未读消息-小红点 Android 实现
Hello, 村长 ????「码不停蹄」效果代码实现首先定义一个圆形 drawableimport android.graphics.Canvas;import android.graphics.ColorFilter;import android.graphics.Paint;import android.graphics.PixelFormat;import android.graphics.drawable.Drawable;import android.graphics.原创 2022-02-12 18:58:15 · 2185 阅读 · 2 评论 -
多进程影响,你的应用退出游戏还会重启吗?真的彻底退出游戏了吗?
Hello,村长我的场景:比如我接入某个渠道的 SDK(手游),无论是网游还是单机 SDK,都到都会要求你接入退出回调,如下图所示:而再某些场景下,我竟然遇到了这种情况:1、多进程情况下,点击 ‘退出游戏’ 按钮,游戏并没有退出,反而重新启动游戏2、多进程 + 多任务栈(配置此属性 android:taskAffinity="com.primer.json.aaaa"),点击 ‘退出游戏’ 按钮,同样的,游戏没有退出成功反而重启我的解决:你应该也有一点思路了,我上面提到两种场景,关键词多.原创 2022-01-27 15:10:15 · 4335 阅读 · 0 评论 -
不使用 Lottie 库,自定义 drawable 实现加载动画
Hello,村长 ????先看效果实现方案1、继承 Drawable2、实现 Animatable先贴上完整代码,注释中稍作解释,如有疑惑欢迎评论????import android.animation.ObjectAnimator;import android.animation.PropertyValuesHolder;import android.animation.ValueAnimator;import android.annotation.SuppressLint;原创 2022-01-23 17:06:03 · 363 阅读 · 0 评论 -
unity 游戏在 Android12 上崩溃啦(小米12)
Hello,村长????崩溃信息日志E/DEBUG: Activity: (none)E/DEBUG: --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---E/DEBUG: um_app_key: 【appid】E/DEBUG: um_app_channel: xiaomiE/DEBUG: um_os: androidE/DEBUG: um_crash_sdk_version: 1.3.1E/DEBUG: um原创 2022-01-06 09:32:42 · 8806 阅读 · 9 评论 -
MacBook m1 芯片快速下载 ndk 和环境配置,防止脱发
Hello,村长2022 年,携手共进,站在巨人的肩膀上提升自己,加油⛽️快速下载 ndk,为什么有这个,因为我多次尝试安装 ndk 镜像文件都失败,未果????1、在 Android studio local.properties 先手动配置设置 ndk 路径2、执行 gradle 同步3、在 Android studio 进入设置 sdk manager,在 ndk 这一栏选择 download【有人会问,为什么不直接到这里下载,不更方便吗?】【确实在这下载更快,而且不用前面的配置,但是原创 2022-01-02 15:08:13 · 3688 阅读 · 0 评论 -
你要的C语言实现雪花纷纷
看图前期准备:首先需要去安装 easyx,请移步到官网 easyx官网打开安装到对应的开发环境程序不懂得,评论欢迎来问#include <graphics.h>#include <time.h>#include <stdio.h>#include <conio.h>#include<vector>using...原创 2020-01-11 21:13:01 · 5179 阅读 · 28 评论