apk 版本号和渠道修改工具

@echo off

setlocal enabledelayedexpansion

set apk=%1
set output=!apk:~0, -4!

java -jar apktool.jar d -f !apk! -o !output!

for /f "delims=" %%i in ('AndroidManifestModifier !output!\AndroidManifest.xml %*') do (

    if not defined error set error=1

    echo %%i
)

if not defined error (

    set apk_unsigned=!output!_unsigned.apk

    java -jar apktool.jar b !output! -o !apk_unsigned!

    RMDIR /S /Q !output!

    set apk_signed=!output!_signed.apk

    java -jar signapk\signapk.jar signapk\sinyeeandroid.x509.pem signapk\sinyeeandroid.pk8 !apk_unsigned! !apk_signed!

    DEL !apk_unsigned!

    set apk_align=!output!_align.apk

    zipalign -f 4 !apk_signed! !apk_align!

    DEL !apk_signed!
)

其中AndroidManifestModifier是C#写的控制台程序,代码如下

using System;
using System.IO;
using System.Text.RegularExpressions;

namespace AndroidManifestModifier
{
    class Program
    {
        static void Main(string[] args)
        {
            if(args.Length == 0)
            {
                Console.WriteLine("请提供参数");
                return;
            }

            var manifestPath = args[0];

            if (manifestPath.ToLower().EndsWith("AndroidManifest.xml"))
            {
                Console.WriteLine("第一个参数必须为manifestPath");
                return;
            }

            bool success = false;

            for (int i=1; i

使用方法:

apk 版本号和渠道修改工具_第1张图片
Paste_Image.png

你可能感兴趣的:(apk 版本号和渠道修改工具)