发布网友 发布时间:2022-04-24 17:00
共1个回答
热心网友 时间:2023-08-10 22:55
修改软件共存,是手机高手早已掌握的一门技能之一。使用mt文件管理或apk编辑器,对如今高版本的apk软件进行傻瓜式共存制作,基本会失败。本文以电脑端修改apk参数的方式制作共存,仅给初学者一个了解与学习的机会。
安卓同个软件安装,后一安装版本不可避免地会覆盖前一版本,这个大家都很清楚,但为什么会被覆盖呢,因为它采用的是同一名称,即相同的安装包名。说起来很抽象,为了便于理解,我们先来了解下apk软件的安装过程吧。系统先是将apk以包名形式复制到/data/app里,然后将class.dex文件优化处理到/data/dalvik-cache,并将相关参数配置文件保存到/data/data,最后在lancher数据库中存储软件信息(如桌面图标等)。这就是软件安装后的去向所在。(本文以天天动听为例)
工具/原料
电脑以及相应的软件
要修改的软件包
相关步骤略括
从上图可以看出,天天动听在所有文件夹中都有相同的文件名com.sds.android.ttpod,这就是包名。所以修改包名便成为软件共存的关键所在,因此我将修改过程简化为以下几个步骤。 1、将apk解包成一个文件夹; 2、修改AndroidManifest.xml及smali目录中的“包名”、“包目录”; 3、修改string.xml中的软件“名称”; 4、根据修改的包名更改smail文件夹; 5、将apk重新签名。下面就一步一步来。
END
步骤一
先解包TTpod7700.apk,看下有没有错误,如有错请删除apktool目录的框架文件。
进入解包后的TTpod7700目录,找到AndroidManifest.xml,用ultraedit打开,package这个就是包名标识符,我们要处理的就是com.sds.android.ttpod。
包名中的com,sds,android,ttpod字符我们没必要全部替换,替换不仅增加了工作量,而且可能会产生一些意想不到的错误,不方便处理。所以最简单的方法就是只替换最后一个字符串,即ttpod就可以了。先我们来替换“包名”。快捷键ctrl+shiftp调出批量替换对话框,查找对话框中填入com.sds.android.ttpod,替换对话框中填入com.sds.android.ttpod2,替换目录设定为刚解包的TTpod7700目录,注意勾选“匹配大小写”和“搜索子目录”,然后点“确定”继续。
点确认继续,耐心等待替换完成,大概将近有千条记录被替换
END
步骤二
下面我们来替换“包目录”。快捷键ctrl+shift+p调出替换对话框,查找对话框中填入com/sds/android/ttpod,替换对话框中填入com/sds/android/ttpod2,点“确定”继续。
END
步骤三
接下来是修改软件“名称”。进入TTpod7700目录,处理values和values-zh下的string.xml文件。由于软件批量替换不支持中文,所以用ultraedit分别打开这两个文件。先来看values下的这个文件。ctrl+r调出替换对话框,将“天天动听”替换为“天天静听”,注意勾选“当前文件”。values-zh中的string.xml文件亦按此方法替换。
这一步就到了修改文件夹了。进入TTpod7700\smali\com\sds\android目录,将ttpod改名为ttpod2。
该到打包了。回编译很简单,主要看有没有错误。
END
步骤四
将编译生成的apk文件移动到签名软件文件夹,双击Sign.bat,打开签名对话框选择选项2对文件进行签名,等待任务完成收工
2
将签好名的天天静听移动到手机,安装试试效果,