安卓玩机-----反编译apk 修改apk 去广告 去弹窗等操作中的一些常识

安卓机型app的编译与反编译 apk文件的简单说明与解析
-安卓修改apk apk的组成和编译 一
电脑端几种反编译apk工具操作步骤解析
前面几个博文有说明关于反编译apk和apk架构等有些常识.今天对以上做个补充。初学者记住一点。对于一个apk文件使用压缩软件7zip打开可以查看到文件组成。使用反编译软件编译后的文件是不同的,这个取决于你使用的反编译软件的功能。不同的反编译软件反编译后的文件略有不同。请区别对待.

简单在说下app中各个文件夹的具体作用,方便感兴趣的友友后续操作对比。
1- assets——总资源目录
主要存放四种文件:文本文件、图像文件、网页文件(包括html中引用的js/ccs/jpg等资源)、音频视频文件,例如游戏bgm、背景图、商店等一些图标.一般来说,如果修改游戏时想换个bgm、图标什么的可以在此处替换.

2-lib——可理解为辅助文件,一般用不到
一种是静态库,另一种是动态库, 一般存放so文件。看图片可以基本了解到软件安装适用于不同的cpu架构.

3-META-INF(有时会在com文件夹中-js开发)——签名文件目录
META-INF文件夹下存放了APK文件的基本信息和签名信息,用来保证APK文件的完整性和系统的安全。通俗的讲,你修改了一段代码,换了某个图片,如果校验结果与META-INF下的内容不一致,系统就不会安装这个APK文件,所以一些软件修改前可以去签名检验,或者修改完自签名。

4-res——资源库目录
可以存放项目中所有的资源文件,例如:图片(*.png、*.jpg)、文本等。(软件logo图标、icon),音频等相关的资源文件。要改软件icon(图标)的可以从这里改.
如:
res/drawable-hdpi:高分辨率图片
res/drawable-mdpi:中分辨率图片
res/drawable-ldpi:低分辩率图片

5-AndroidManifest.xml——理解为权限和页面布局集合
权限设置与管理,修改权限,修改布局专用文件。应用清单文件,版本号、版本名称、权限、应用名称、应用图标、活动、服务、广播等配置信息,均在这个文件中。(也就是运行时调用手机的硬件、组件,例如调用蓝牙的权限、发送SIM的权限).在其中
拥有完全的网络访问权限 --> <uses-permission android:name="android.permission.INTERNET" />可以去网络权限从而去广告 .可以改版本号从而去更新等【或者改为0dp去联网权限】


6.resources.arsc——资源索引文件
编译后的二进制资源文件,内容包含了开发程序时项目文件夹中res子文件夹下main.xml、strings.xml等文件的信息。汉化的话一般是反编译这个文件.可以在这里改软件名,去广告,改会员等
7.classes.dex——可执行文件【有单个或者多个classes文件】
简单说就是优化后的android版.exe。每个apk安装包里都有。安卓系统上的可执行文件,也是我们逆向的主要的文件,源码都被编译在里面。
比如有许多软件因为每个dex里最多存放65535个方法,而项目的方法数超出了这个数量,所以被分成多个保存,而出现了classes.dex,classes2.dex ,classes3.dex等等.这个最常用,一般都在dex里搜索过滤isvip,会员,ad,show year vip ,免费,qq,弹窗等等

------------------------------------------------------------------------------------------------------------------------
了解有关app中去广告等修改相关的步骤与索引
1.在app中代码-mDialog,是对话的意思,跳转
clclasses++搜索:isvip代码,选择方法名,会员的意思多数软件赋值地方.大部分软件修改会员都用这个.
2.去xml删除谷歌类
与com.google.android.gms.ads.AdActivity相关
3.使用字符常量池打开dex搜索
com.google.android.gms.ads.AdActivity.留下.AdActivity不能全删会闪退
4--show弹窗对话框,常用破 解软件赋值代码
const-wide v0, 0x1赋值
const/4 v0, 0x1 破 解会员功能赋值
const-string p1,
const-string p0,""
const v0,-1 赋值去广告秒数
const v0,0 去广告赋值。去升级赋值
const v0, 0x1 破 解会员功能赋值
const-string v0 , "11"
return-object v0 返回结束代码 return v0
5.去广告都是赋值x0
列如:去广告赋值 const/4 v0, 0x0,
6.破解软件会员赋值
const/4 v0, 0x1
return v0
所有的赋值需要在return v0代码上面,因为return v0是赋值给0也就是赋值给0了,所以需要在它返回结束的代码上,给它强行赋值x1。
7.showDialog是显示对话框的意思
删除或注释show这行代码它就没弹窗
8.给软件加简单弹窗.弹窗代码
const-string v0, "弹窗内容"const/4 v1, 0x1invoke-static {p0, v0, v1}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;move-result-object v0invoke-virtual {v0}, Landroid/widget/Toast;->show()V
定位主程序入口(一般都act记录来找)dex++中找到主程序入口.在主程序中oncreate粘贴弹窗代码
9.去弹窗.修改 AndroidManifest.xml
编译 apk 中的 AndroidManifest.xml 文件查看应用的版本号和版本名称。其中 versionCode 就是版本号,软件更新就是根据这个,versionName 就是版本名称,随便改可以,我们把 versionCode 改成 9999(也就是大于他原来的数字如5100,5600),然后编译保存,重新签名后安装测试,如果更新没了就说明成功了,如果发现还是有更新提示,看来这个 APP 使用方法一无效。(只是对当前 APP 无效,其它 APP 还是可能有效的.
10.去弹窗-搜索版本号
Dex 编辑器++ 打开 apk 中的 classes.dex 文件,切换到搜索页,发起新搜索,内容输入 510(看你软件版本号),搜索类型选择整数,不要勾选十六进制,点击确认后,使用该方法如果搜索到了很少的几个结果(如图),只需要在代码中把对应的数字修改成大于最新版本的数字就行了。另外代码中的数字一般以十六进制显示,所以在代码中进行文本搜索时还需要手动转换一下版本号
11-去弹窗.
搜索关键字
一般 APP 会从一个网址中读取最新版本信息,而网址是 http 开头,所以我们搜索 http,然后根据整个网址来判断它是否是我们要找的。
与更新有关的英语单词有:version、update、ver,如果你找到的网址包含其中一个,那么很可能就是它了。
如果在你搜到的网址中都找不到这几个单词,那你可以尝试使用 Dex 编辑器++,搜索类型选择代码,分别搜索上面的三个单词。
如果我们看到一个网址包含着关键字 version或update,我们把它随便改成一个无效的网址,例如 http:jinitaimei,修改完成后然后保存 dex 文件。弹窗就没了
12--去广告.app中classes.dex(有的话全选)/dex编辑器, 然后右上角常量搜索:onLayout然后会出来很多结果,因为只要把这个类名路径改掉就好了,com/google/android/gms/ads/BaseAdView;(注:你们找的时候可以看com开头的。)

兴趣是最好的老师。通过了解以上可以从最初步的修改软件版本 替换软件图标等等上手操作体验其中的乐趣。
相关文章:
安卓玩机-----反编译apk 修改apk 去广告 去弹窗等操作中的一些常识
安卓机型app的编译与反编译 apk文件的简单说明与解析 -安卓修改apk apk的组成和编译 一 电脑端几种反编译apk工具操作步骤解析 前面几个博文有说明关于反编译apk和apk架构等有些常识.今天对以上做个补充。初学者记住一点。对于一个apk文件使用压缩软件7zip打开可以查看到文件…...
Hoeffing不等式
在李航老师的统计学习方法(第一版中) H o e f f i n g 不等式 Hoeffing不等式 Hoeffing不等式是这样子给出的 设 X 1 , X 2 , . . . , X N X_1,X_2,...,X_N X1,X2,...,XN是独立随机变量,且 X i ∈ [ a i , b i ] , i 1 , 2 , . . . ,…...
ffmpeg解复用指定pid转推udp
命令 ffmpeg -re -i udp://224.2.2.2:4003?fifo_size1024000 -map #5001 -acodec copy -flush_packets 1 -f mpegts udp://192.168.2.62:5161 ffmpeg -re -i udp://224.2.2.2:4003?fifo_size1024000 -map #5001 -acodec copy -flush_packets 1 -f mpegts udp://192.16…...
Vue组件通信方式
1.props通信 1.1在 Vue 2 中使用 props 通信 注意:props传递的数据是只读的,子组件修改,不会影响父组件 1.1.1.定义 props 在子组件中使用 props 选项来定义要接收的属性 // 子组件 <script> export default {props: {message: String} } </script>1.1.2.传递…...
redis-设置从节点
节点结构 节点配置文件 主节点 不变 6380节点 port 6380 slaveof 127.0.0.1 63796381节点 port 6381 slaveof 127.0.0.1 6380启动 指定配置文件的方式启动 D:\jiqun\redis\Redis-6380>redis-server.exe redis.windows.conf启动时,会触发同步数据命令 主节点…...
k8s-实战——基于nfs实现动态存储
部署nfs服务 基于Centos7.9版本创建动态存储注意k8s版本应低于v1.24版本高k8s版本ServiceAccount需要手动创建secrets并关联相关sa部署流程 创建NFS共享服务、采用单独的节点用于nfs服务独占安装nfs-utils和rpcbindnfs客户端和服务端都安装nfs-utils包通过部署化脚本安装k8s集群…...
【广州华锐互动】鱼类授精繁殖VR虚拟仿真实训系统
随着科技的不断发展,虚拟现实技术在各个领域的应用越来越广泛。在养殖业中,VR技术可以帮助养殖户进行家鱼授精实操演练,提高养殖效率和繁殖成功率。本文将介绍利用VR开展家鱼授精实操演练的方法和应用。 首先,我们需要了解家鱼授精…...
RocketMQ Promethus Exporter
介绍 Rocketmq-exporter 是用于监控 RocketMQ broker 端和客户端所有相关指标的系统,通过 mqAdmin 从 broker 端获取指标值后封装成 87 个 cache。 警告 过去版本曾是 87 个 concurrentHashMap,由于 Map 不会删除过期指标,所以一旦有 la…...
Kafka收发消息核心参数详解
文章目录 1、从基础的客户端说起1.1、消息发送者主流程1.2、消息消费者主流程 2、从客户端属性来梳理客户端工作机制2.1、消费者分组消费机制 1、从基础的客户端说起 Kafka提供了非常简单的客户端API。只需要引入一个Maven依赖即可: <dependency><groupId…...
Springboot中Aop的使用
Springboot中使用拦截器、过滤器、监听器-CSDN博客 相比较于拦截器,Spring 的aop则功能更强大,封装的更细致,需要单独引用 jar包。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-b…...
创建vue3项目、链式调用、setup函数、ref函数、reactive函数、计算和监听属性、vue3的生命周期、torefs的使用、vue3的setup写法
1 创建vue3项目 # 两种方式- vue-cli:vue脚手架---》创建vue项目---》构建vue项目--》工具链跟之前一样- vite :https://cn.vitejs.dev/-npm create vuelatest // 或者-npm create vitelatest一路选择即可# 运行vue3项目-vue-cli跟之前一样-vite 创建的…...
搭建好自己的PyPi服务器后怎么使用
当您成功搭建好自己的 PyPI 服务器后,您可以使用以下步骤来发布和使用您的包: 打包您的代码: 首先,将您的 Python 项目打包成一个发布包。确保您已经在项目根目录下创建了 setup.py 文件,并按照正确的格式填写了项目信…...
Vue3 中使用provide和reject
1、provide 和reject 可以实现一条事件线上的 父传子,父传孙等;相比较 props emits 仅限与父子传参更方便,相较于pinia书写更简单,但是需要注意使用响应式,如果是非响应式的会导致页面更新不及时 父组件 <templat…...
大数据flink篇之一-基础知识
一、起源 2010至2014年间,由柏林工业大学、柏林洪堡大学和哈索普拉特纳研究所联合发起名Stratosphere的研究项目。2014年4月,项目贡献给Apache基金会,成为孵化项目。更名为Flink2014年12月,成为基金会顶级项目2015年9月ÿ…...
No140.精选前端面试题,享受每天的挑战和学习
🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…...
Oracle 11g_FusionOS_安装文档
同事让安装数据库,查询服务器信息发现操作系统是超聚变根据华为openEuler操作系统更改的自研操作系统,安装过程中踩坑不少,最后在超聚变厂商的技术支持下安装成功,步骤可参数该文。 一、 安装环境准备 1.1 软件下载 下载地址:…...
Linux驱动实现IO模型
在Linux系统分为内核态和用户态,CPU会在这两个状态之间进行切换。当进行IO操作时,应用程序会使用系统调用进入内核态,内核操作系统会准备好数据,把IO设备的数据加载到内核缓冲区。 然后内核操作系统会把内核缓冲区的数据从内核空…...
wsl2 更新报错问题解决记录
1、问题 win10 中安装的 wsl2,启动 docker desktop 时提示 wsl2 有问题: 于是点击推荐的地址连接到微软,下载 wsl2 的更新文件。之后运行,又报错: 更新被卡住。 2、解决方法 WinR 输入 cmd 打开命令行窗口&#x…...
突破算法迷宫:精选50道-算法刷题指南
前言 在计算机科学和编程领域,算法和数据结构是基础的概念,无论你是一名初学者还是有经验的开发者,都需要掌握它们。本文将带你深入了解一系列常见的算法和数据结构问题,包括二分查找、滑动窗口、链表、二叉树、TopK、设计题、动…...
玩转Mysql系列 - 第26篇:聊聊mysql如何实现分布式锁?
这是Mysql系列第26篇。 本篇我们使用mysql实现一个分布式锁。 分布式锁的功能 分布式锁使用者位于不同的机器中,锁获取成功之后,才可以对共享资源进行操作 锁具有重入的功能:即一个使用者可以多次获取某个锁 获取锁有超时的功能ÿ…...
云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?
大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...
<6>-MySQL表的增删查改
目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表…...
【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
《通信之道——从微积分到 5G》读书总结
第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...
Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配
AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...
【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
