往期教程
apk反编译修改教程系列-----修改apk应用名称 任意修改名称 签名【一】
上期演示了下如何修改apk的名称。相信只要用心的友友都会操作了。这次讲解下如何修改软件的版本号与版本名字的操作
名词浅释:
在apk反编译中的VersionCode---是版本号的意思.是一个Integer类型的数值.通常情况下,发布自己第一个应用时设置版本号为1,这是最普遍的做法。是对用户不可见的版本号.代表app更新过多少次
VersionName---是版本名的意思。是一个版本的描述,是给用户看的,也就是用户放在各个第三方平台上提供给使用者看的一个版本名.代表应用程序的版本信息
先来看看常用软件微信的版本信息:
那么他在反编译apk后是这样表现的
基本已经很清除的明白具体的分别了。而我们一般只需要修改VersionName即可。
步骤如下
反编译软件继续使用mt或者其他反编译软件。也可以电脑端使用反编译打开微信apk。mt必须是会员才可以反编译,在所有的apk中.AndroidManifest.xml文件是每个Android程序apk中必须的文件,它是整个Android程序的全局描述文件,除了能声明程序中的Activities,Content Providers,Services,和Intent Receivers,还能指定应用的名称、使用的图标、包含的组件以及permissions和instrumentation(安全控制和测试)。那么在操作前我们有必要先了解下AndroidManifest.xml文件接点说明与意义
- xmlns:android:定义android命名空间,这样使得Android中各种标准属性能在文件中使用,提供了大部分元素中的数据。
- package:指定本应用内java主程序包的包名,它也是一个应用进程的默认名称。
- application:一个AndroidManifest.xml中必须含有一个Application标签,这个标签声明了每一个应用程序的组件及其属性(如icon、label、permission等)。
- allowBackup:当allowBackup标志为true时,用户即可通过adb backup和adb restore来进行对应用数据的备份和恢复,这可能会带来一定的安全风险。
- icon:这个很简单,就是声明整个APP的图标,图片一般都放在drawable文件夹下。
- label:声明整个APP的名字,字符串常量一般都放在values文件夹下的strings.xml里。
- supportsRtl:支持从右往左显示的布局(正常布局在镜子里面看到的左右对调过的样子)。
- theme:是一个资源的风格,它定义了一个默认的主题风格给所有的activity,当然也可以在自己的theme里面去设置它,有点类似style。
- activity:定义APP中的一个组件Activity。
- name:该Activity的名字。
- intent-filter:广播过滤器,后续会讲到。
- <action android:name:指定程序入口Activity,在这里是MainActivity。
- <category android:name:指定当前动作(Action)被执行的环境。这里的CATEGORY_LAUNCHER决定应用程序是否显示在程序列表里。
- 其余的:对应于各个开始节点的结束节点。
在刚才的图片界面点击查看。然后找到AndroidManifest.xml文件。点击选择反编译
在出来的界面中修改版本号即可。例如修改后
效果
其中androldmanifest.xml代码类似以下。其他修改方法也如此。原则上修改可以防止自动更新。当然还是那句话。有的工具支持一键修改,为了方便后续的教程步骤。建议实际操作了解apk反编译全过程.类似的教程在csdn中有很多。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"android:versionCode="2460"android:versionName="8.0.42".="auto".="32"android:compileSdkVersionCodename="12"package="com.tencent.mm"platformBuildVersionCode="32"platformBuildVersionName="12"><uses-sdk android:minSdkVersion="23" android:targetSdkVersion="29"/><queries><packageandroid:name="com.tencent.mm.coolassist"/><intent><actionandroid:name="android.intent.action.VIEW"/></intent><intent><actionandroid:name="com.tencent.wmpf.action.WMPF_SCAN_CODE"/></intent><intent><actionandroid:name="com.tencent.QQBrowser.action.VIEW"/></intent><intent><actionandroid:name="android.intent.action.SEND"/></intent><intent><actionandroid:name="android.intent.action.PICK"/></intent><intent><dataandroid:scheme="qqmail"/></intent><intent><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent><intent><actionandroid:name="android.intent.action.INSERT"/><dataandroid:mimeType="vnd.android.cursor.dir/contact"/></intent><intent><actionandroid:name="android.intent.action.INSERT_OR_EDIT"/><dataandroid:mimeType="vnd.android.cursor.item/person"/></intent><intent><actionandroid:name="android.media.action.IMAGE_CAPTURE"/></intent><packageandroid:name="com.tencent.mtt"/><packageandroid:name="com.tencent.androidqqmail"/><packageandroid:name="com.tencent.weishi"/><packageandroid:name="com.google.android.apps.maps"/><packageandroid:name="com.baidu.BaiduMap"/><packageandroid:name="com.autonavi.minimap"/><packageandroid:name="com.sogou.map.android.maps"/><packageandroid:name="com.tencent.map"/><packageandroid:name="com.tencent.weread"/><packageandroid:name="com.tencent.mobileqq"/><packageandroid:name="com.miui.securitycenter"/><packageandroid:name="com.oppo.launcher"/><packageandroid:name="com.bbk.launcher2"/><packageandroid:name="com.tencent.wework"/><packageandroid:name="com.tencent.android.qqdownloader"/><packageandroid:name="com.tencent.qqpimsecure"/><packageandroid:name="com.tencent.qqpim"/><packageandroid:name="com.android.vending"/><packageandroid:name="com.google.android.wearable.app.cn"/><packageandroid:name="com.google.android.wearable.app"/><packageandroid:name="com.unionpay"/><packageandroid:name="com.tencent.news"/><packageandroid:name="com.xunmeng.pinduoduo"/><packageandroid:name="com.smile.gifmaker"/><packageandroid:name="com.kuaishou.nebula"/><packageandroid:name="com.tencent.wemeet.app"/><packageandroid:name="com.wuba.town.client"/><packageandroid:name="com.tencent.qqlive"/><packageandroid:name="com.tencent.karaoke"/><packageandroid:name="com.tencent.tmgp.sgame"/><packageandroid:name="com.jingdong.app.mall"/><packageandroid:name="com.MobileTicket"/><packageandroid:name="tv.danmaku.bili"/><packageandroid:name="com.webank.wemoney"/><packageandroid:name="com.tencent.mp"/><packageandroid:name="com.tencent.qqsports"/><packageandroid:name="com.tencent.docs"/><packageandroid:name="com.sankuai.meituan"/><packageandroid:name="com.baidu.searchbox"/><packageandroid:name="com.hicorenational.antifraud"/><packageandroid:name="com.xingin.xhs"/><packageandroid:name="com.ss.android.ugc.aweme"/><packageandroid:name="com.dragon.read"/><packageandroid:name="com.tencent.qqgame.xq"/><packageandroid:name="com.tencent.gamehelper.smoba"/><packageandroid:name="com.tencent.tmgp.cod"/><packageandroid:name="com.xunmeng.merchant"/><packageandroid:name="com.cctv.yangshipin.app.androidp"/><packageandroid:name="com.tencent.tmgp.pubgmhd"/><packageandroid:name="com.kugou.android"/><packageandroid:name="com.tencent.tmgp.speedmobile"/><packageandroid:name="cmb.pb"/><packageandroid:name="cn.gov.pbc.dcep"/><packageandroid:name="com.tencent.wetype"/><packageandroid:name="com.tencent.soter.soterserver"/><packageandroid:name="com.tencent.mm"/><intent><actionandroid:name="androidx.camera.extensions.action.VENDOR_ACTION"/></intent></queries><permissionandroid:name="com.tencent.mm.plugin.permission.WRITE"android:protectionLevel="signature"/><permissionandroid:name="com.tencent.mm.plugin.permission.READ"android:protectionLevel="signature"/><permissionandroid:name="com.tencent.mm.permission.MM_MESSAGE"android:protectionLevel="signature"/><permissionandroid:name="com.tencent.mm.permission.MOVE_XLOG"android:protectionLevel="signatureOrSystem"/>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:versionCode="2460"
android:versionName="8.0.42"
.="auto"
.="32"
android:compileSdkVersionCodename="12"
package="com.tencent.mm"
platformBuildVersionCode="32"
platformBuildVersionName="12">
<uses-sdk android:minSdkVersion="23" android:targetSdkVersion="29"/>
<queries>
<package
android:name="com.tencent.mm.coolassist"/>
<intent>
<action
android:name="android.intent.action.VIEW"/>
</intent>
<intent>
<action
android:name="com.tencent.wmpf.action.WMPF_SCAN_CODE"/>
</intent>
<intent>
<action
android:name="com.tencent.QQBrowser.action.VIEW"/>
这些前期的教程其实没有多大的技术含量。只是通过详细的步骤来让初期接触反编译apk过程的友友少走点弯路。引起学习兴趣。