apk反编译修改教程系列---修改apk包名等信息 让一个应用拥有无限分身 手机电脑同步演示【九】

news2024/7/30 8:19:50

往期教程:

apk反编译修改教程系列-----修改apk应用名称 任意修改名称 签名【一】

apk反编译修改教程系列-----任意修改apk版本号 版本名 防止自动更新【二】

apk反编译修改教程系列-----修改apk中的图片 任意更换apk桌面图片【三】

apk反编译修改教程系列---简单去除apk联网权限 其他权限 无法自动更新等【四】

apk反编译修改教程系列---简单去除apk开屏广告【五】

apk反编译修改教程系列---修改apk设置菜单选项名称 修改默认设置 增加减少选项【六】
apk反编译修改教程系列---简单给app添加启动弹窗 添加对话框 跳转指定网页等【七】

安卓玩机-----给app加注册码 app加弹窗 云注入弹窗

apk反编译修改教程系列---如何简单的汉化apk 手机端与电脑端同步演示【八】

今天详细的解析下如何修改一个软件让其可以无限分身的操作步骤。效果类似等同于多开微信等等。演示的apk都比较简单,目的只是了解反编译操作的基本步骤

操作步骤;

演示apk;创建快捷方式apk

工具:MT或者电脑端反编译工具

电脑端反编译工具

创建快捷方式apk这款工具主要是来创建一些隐藏app的桌面图标。很多系统类软件在桌面是看不到图标的,因为修改了显示 默认隐藏。

首先.常规打开此款apk。使用手机端或者电脑端工具进行反编译

电脑端举例

手机端:

常规修改打开步骤。必须修改包名。不然有重复包名安装就会提示报错。先修改包名

可以看到我在原包名的后面添加了package="com.x7890.shortcutcreator01加了个01这个没有什么必须。与原包名不一样即可。电脑端修改步骤也一样

然后回编译保存签名安装会提示报错。提示为“存在同名的内容提供者”,错误的原因是由于我们只修改了包名,没有修改内容提供者。类似

我们需要继续修改内容提供者的信息。同样的步骤反编译打开AndroidManifest.xml。搜索provider修改。我都在原名字后加了01。

原工具代码

<?xml version="1.0" encoding="utf-8" standalone="no"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" android:compileSdkVersion="28" android:compileSdkVersionCodename="9" package="com.x7890.shortcutcreator" platformBuildVersionCode="117" platformBuildVersionName="1.17">
    <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.ACCESS_SUPERUSER"/>
    <application android:allowBackup="true" android:appComponentFactory="android.support.v4.app.CoreComponentFactory" android:icon="@mipmap/icon1" android:label="@string/app_name" android:largeHeap="true" android:supportsRtl="true" android:theme="@style/ThemeApp">
        <provider android:authorities="com.x7890.shortcutcreator.FileProvider" android:exported="false" android:grantUriPermissions="true" android:name="android.support.v4.content.FileProvider">
            <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"/>
        </provider>
        <activity android:exported="true" android:launchMode="singleTask" android:name="com.x7890.shortcutcreator.AppListActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <activity android:label="快捷方式详细信息" android:name="com.x7890.shortcutcreator.CreateShortcutActivity"/>
        <activity android:label="活动选择" android:name="com.x7890.shortcutcreator.ActivityListActivity"/>
        <activity android:exported="true" android:icon="@mipmap/icon2" android:label="活动收藏" android:name="com.x7890.shortcutcreator.CollectionListActivity"/>
        <activity android:label="作者二维码" android:name="com.x7890.shortcutcreator.AuthorCodeActivity"/>
        <activity android:excludeFromRecents="true" android:exported="true" android:label="Root强制打开活动" android:name="com.x7890.shortcutcreator.RootOpenActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
        <activity android:excludeFromRecents="true" android:exported="true" android:label="微信扫一扫" android:name="com.x7890.shortcutcreator.WechatScanActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
        <activity android:excludeFromRecents="true" android:exported="true" android:label="支付宝扫一扫" android:name="com.x7890.shortcutcreator.AlipayScanActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
        <receiver android:label="创建快捷方式回调" android:name="com.x7890.shortcutcreator.PinShortcutReceiver"/>
    </application>
</manifest>

修改后的代码

<?xml version="1.0" encoding="utf-8" standalone="no"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" android:compileSdkVersion="28" android:compileSdkVersionCodename="9" package="com.x7890.shortcutcreator01" platformBuildVersionCode="117" platformBuildVersionName="1.17">
    <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.ACCESS_SUPERUSER"/>
    <application android:allowBackup="true" android:appComponentFactory="android.support.v4.app.CoreComponentFactory" android:icon="@mipmap/icon1" android:label="@string/app_name" android:largeHeap="true" android:supportsRtl="true" android:theme="@style/ThemeApp">
        <provider android:authorities="com.x7890.shortcutcreator.FileProvider01" android:exported="false" android:grantUriPermissions="true" android:name="android.support.v4.content.FileProvider">
            <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"/>
        </provider>
        <activity android:exported="true" android:launchMode="singleTask" android:name="com.x7890.shortcutcreator.AppListActivity01">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <activity android:label="快捷方式详细信息" android:name="com.x7890.shortcutcreator.CreateShortcutActivity"/>
        <activity android:label="活动选择" android:name="com.x7890.shortcutcreator.ActivityListActivity"/>
        <activity android:exported="true" android:icon="@mipmap/icon2" android:label="活动收藏" android:name="com.x7890.shortcutcreator.CollectionListActivity"/>
        <activity android:label="作者二维码" android:name="com.x7890.shortcutcreator.AuthorCodeActivity"/>
        <activity android:excludeFromRecents="true" android:exported="true" android:label="Root强制打开活动" android:name="com.x7890.shortcutcreator.RootOpenActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
        <activity android:excludeFromRecents="true" android:exported="true" android:label="微信扫一扫" android:name="com.x7890.shortcutcreator.WechatScanActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
        <activity android:excludeFromRecents="true" android:exported="true" android:label="支付宝扫一扫" android:name="com.x7890.shortcutcreator.AlipayScanActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
        <receiver android:label="创建快捷方式回调" android:name="com.x7890.shortcutcreator.PinShortcutReceiver"/>
    </application>
</manifest>

类似。可以仔细对比下原工具AndroidManifest.xml与修改后的AndroidManifest.xml不同之处

此时重新回编译签名后安装一切正常。按此方法可以一直修改安装同一个软件达到多开.

当然演示的apk与步骤只是一个很简单 很小的工具。了解其修改步骤。任何软件都一样。区别可能有的软件会加固 加密或者会有多出包名等等。当然类似的多开有很多简洁方便的工具和其他修改方法来达到目的.

下期预告:修改apk的默认颜色 布局等相关

**系列教程只是让初学者了解反编译的一些初步常识,尽量每一步都图文说明。详细的由浅入深解析apk的各种反编译操作。有兴趣的友友可以关注

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1367888.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java后端开发——SSM整合实验

文章目录 Java后端开发——SSM整合实验一、常用方式整合SSM框架二、纯注解方式整合SSM框架 Java后端开发——SSM整合实验 一、常用方式整合SSM框架 1.搭建数据库环境&#xff1a;MySQL数据库中创建一个名称为ssm的数据库&#xff0c;在该数据库中创建一个名称为tb_book的表 …

Spark MLlib ----- ALS算法

补充 在谈ALS(Alternating Least Squares)之前首先来谈谈LS,即最小二乘法。LS算法是ALS的基础,是一种数优化技术,也是一种常用的机器学习算法,他通过最小化误差平方和寻找数据的最佳匹配,利用最小二乘法寻找最优的未知数据,保证求的数据与已知的数据误差最小。LS也被用…

Fastdata极数公司介绍

【写在开头】 前不久看到一句话和一个新闻&#xff0c;“数据作为主要生产要素&#xff0c;以资源化为起点&#xff0c;经历资产化、资本化阶段&#xff0c;逐步实现数据价值。” 2023年10月25日&#xff0c;国家数据局正式揭牌&#xff0c;由国家发展和改革委员会管理。 初看…

4.2 MATRIX MULTIPLICATION

矩阵-矩阵乘法&#xff0c;或简称矩阵乘法&#xff0c;在 i X j&#xff08;i 行 by j 列&#xff09;矩阵 M 和 j x k 矩阵 N 之间产生 i X k 矩阵P。矩阵乘法是基本线性代数子程序&#xff08;BLAS&#xff09;标准的重要组成部分&#xff08;见第3章中的“线性代数函数”边栏…

SpringBoot-开启Actuator监控

Spring Boot Actuator是Spring Boot提供的一种管理和监控应用程序的框架&#xff0c;可以帮助我们了解应用程序的运行状况&#xff0c;提供HTTP端点来暴露应用程序的不同方面&#xff0c;如健康状况、指标、日志和运行时信息等。 开启Actuator监控&#xff0c;我们可以通过HTT…

IDEA+Git——项目分支管理

IDEAGit——项目分支管理 1. 前言2. 基础知识点2.1. 分支区分2.2. Git 代码提交规范2.3. 四个工作区域2.4. 文件的四种状态2.5. 常用命令2.6 注重点 3. IDEA分支管理 1. 前言 在Git中&#xff0c;分支是项目的不同版本&#xff0c;当开始开发一个新项目时&#xff0c;主分支通常…

基于Java SSM框架实现班级同学录管理系统项目【项目源码】计算机毕业设计

基于java的SSM框架实现班级同学录管理系统演示 SSM框架 当今流行的“SSM组合框架”是Spring SpringMVC MyBatis的缩写&#xff0c;受到很多的追捧&#xff0c;“组合SSM框架”是强强联手、各司其职、协调互补的团队精神。web项目的框架&#xff0c;通常更简单的数据源。Spri…

LabVIEW开发自动光学焊点检测系统

LabVIEW开发自动光学焊点检测系统 LabVIEW于开发了一个自动光学焊点检测系统&#xff0c;旨在提高电子元件焊接的质量和效率。通过利用LabVIEW的高级视觉开发模块&#xff0c;该系统能够准确地识别和分类电路板上的不同焊点类型&#xff0c;如桥接、虚焊、漏焊和多锡。这一进步…

Hibernate实战之操作MySQL数据库(2024-1-8)

Hibernate实战之操作MySQL数据库 2024.1.8 前提环境&#xff08;JavaMySQLNavicatVS Code&#xff09;1、Hibernate简介1.1 了解HQL 2、MySQL数据库建表2.1 编写SQL脚本2.2 MySQL执行脚本 3、Java操作MySQL实例&#xff08;Hibernate&#xff09;3.1 准备依赖的第三方jar包3.2 …

【S32K 进阶之旅】 NXP S32K3 以太网 RMII 接口调试(3)

前言 两章我们使用大联大世平集团开发的 NXP S32K344 开发板和 NXP 官网开放的 TCP/IP stacks 例程完成了 NXP S32K3 以太网功能的开发环境搭建和软件调试&#xff0c;下面验证 RMII 百兆通信基本功能。没看过第一节的小伙伴请移步《【S32K 进阶之旅】 NXP S32K3 以太网 RMII 接…

《矩阵分析》笔记

来源&#xff1a;【《矩阵分析》期末速成 主讲人&#xff1a;苑长&#xff08;5小时冲上90&#xff09;】https://www.bilibili.com/video/BV1A24y1p76q?vd_sourcec4e1c57e5b6ca4824f87e74170ffa64d 这学期考矩阵论&#xff0c;使用教材是《矩阵论简明教程》&#xff0c;因为没…

爬虫-5-数据提取-正则,xpath

#免责声明:本文仅供学习&#xff0c;请遵纪守法。 ԅ(ㅂԅ)

静态网页设计——个人图书馆(HTML+CSS+JavaScript)(dw、sublime Text、webstorm、HBuilder X)

前言 声明&#xff1a;该文章只是做技术分享&#xff0c;若侵权请联系我删除。&#xff01;&#xff01; 感谢大佬的视频&#xff1a; https://www.bilibili.com/video/BV1VN4y1q7cz/?vd_source5f425e0074a7f92921f53ab87712357b 源码&#xff1a;https://space.bilibili.co…

【嵌入式】git工具基础命令学习笔记 | 嵌入式Linux

文章目录 前言一、git基础指令二、git分支管理2.1、一些基础命令2.2、时间回溯2.3、新建分支&#xff0c;删除分支&#xff0c;重命名分支 前言 参考&#xff1a;飞凌嵌入式ElfBoard ELF-1 软件学习手册 chatGPT 一、git基础指令 首先我们新建一个名叫git的文件夹&#xff0…

【Java集合篇】HashMap的put方法是如何实现的?

HashMap的put方法是如何实现的 ✔️典型解析✔️ 拓展知识仓✔️HashMap put方法的优缺点有哪些✔️如何避免HashMap put方法的哈希冲突✔️如何避免HashMap put方法的哈希重 ✔️源码解读✔️putVal 方法主要实现如下&#xff0c;为了更好的帮助大家阅读&#xff0c;提升效率&…

MySql01:初识

1.mysql数据库2.配置环境变量3. 列的类型和属性&#xff0c;索引&#xff0c;注释3.1 类型3.2 属性3.3 主键(主键索引)3.4 注释 4.结构化查询语句分类&#xff1a;5.列类型--表列类型设置 1.mysql数据库 数据库&#xff1a; ​ 数据仓库&#xff0c;存储数据&#xff0c;以前我…

物理实验2023年下B卷部分题目总结

物理实验考试每个实验的题目由5个题变成8个题了QAQ 交直流电桥 1.惠斯通电桥不适于阻值较低&#xff08;1欧以下&#xff09;电阻的原因 2.立式电桥与卧式电桥的比较&#xff08;灵敏度、准确度、测量范围&#xff09; 3.交流电桥平衡法测电容的电路接线 4.铜热电阻、热敏…

Qt 6之五:创建菜单

Qt 6之五&#xff1a;创建菜单 Qt是一种跨平台的C应用程序开发框架&#xff0c;它提供了一套丰富的工具和库&#xff0c;可以帮助开发者快速构建跨平台的应用程序&#xff0c;用于开发图形用户界面&#xff08;GUI&#xff09;和非GUI应用程序。 Qt 6之一&#xff1a;简介、安…

初识大数据,一文掌握大数据必备知识文集(15)

&#x1f3c6;作者简介&#xff0c;普修罗双战士&#xff0c;一直追求不断学习和成长&#xff0c;在技术的道路上持续探索和实践。 &#x1f3c6;多年互联网行业从业经验&#xff0c;历任核心研发工程师&#xff0c;项目技术负责人。 &#x1f389;欢迎 &#x1f44d;点赞✍评论…

Kafka与RabbitMQ的区别

消息队列介绍 消息队列&#xff08;Message Queue&#xff09;是一种在分布式系统中进行异步通信的机制。它允许一个或多个生产者在发送消息时暂时将消息存储在队列中&#xff0c;然后由一个或多个消费者按顺序读取并处理这些消息。 消息队列具有以下特点&#xff1a; 异步通…