`

Apk签名

 
阅读更多
apktool 官方下载
https://ibotpeaches.github.io/Apktool/


Apktool 2.x的安装

Windows:
1)下载脚本链接并存为apktool.bat
2)下载 apktool-2 (下载最新)
3)重命名下载的jar文件为apktool.jar
4)移动文件(apktool.jar & apktool.bat) 到电脑的windows目录,一般为C://Windows
如果你没有权限访问C://Windows,你可以将这两个文件放在任意目录下,然后将该目录添加到环境变量path中
尝试在命令行中运行
注意 - 脚本文件bat并不是必须的,但该文件非常有用,你可以避免反复输入 java -jar apktool.jar。

    HWND pConsoleHandle = ::FindWindow(_T("ConsoleWindowClass"), NULL);
    if (NULL == pConsoleHandle)
    {
        //ShellExecute(0,"runas","cmd /c net user administrator /active:yes","","",1); 
        WinExec("cmd.exe", SW_SHOW);
        Sleep(1000);

        pConsoleHandle = ::FindWindow(_T("ConsoleWindowClass"), NULL);
        ASSERT(pConsoleHandle != NULL);
    }

    //AutoSendMessage(pConsoleHandle, "ipconfig");
    AutoSendMessage(pConsoleHandle, "cd C:\\Users\\jacky_dai\\Desktop\\Android Sign Test\\AndroidSignerHelper\\working_folder");
    Sleep(2000);
    AutoSendMessage(pConsoleHandle, "SaioTool -key 2048 C:\\Users\\jacky_dai\\Desktop\\123\\");
    Sleep(2000);
    AutoSendMessage(pConsoleHandle, "123456");//password for key
    Sleep(2000);


VOID CAndroidAPKSignerDlg::AutoSendMessage(HWND pHandle, CString strMsg)
{
    if (pHandle != NULL)
    {
        int nSize = strMsg.GetLength();

        for (int i=0; i< nSize; i++)
        {
            char chCharacter = strMsg.GetAt(i);
            ::PostMessage(pHandle, WM_CHAR, chCharacter, NULL);
        }

        if (nSize > 0)
        {
            ::PostMessage(pHandle, WM_KEYDOWN, VK_RETURN, NULL);  
            //::PostMessage(pHandle, WM_KEYUP, VK_RETURN, NULL);  
        }
    }
}

void CAndroidAPKSignerDlg::OnBnClickedOk()
{
    // TODO: Add your control notification handler code here
    //system("cmd.exe");
    //ShellExecute(0,"runas", LPCSTR("cmd.exe"),LPCSTR("/c net user administrator /active:yes"),"",SW_SHOW);

    //ShellExecute(0,"runas", LPCSTR("cmd.exe"),LPCSTR("/c net user administrator /active:yes"),"",SW_SHOW);
    //ShellExecute(0,"open","cmd.EXE", LPCSTR("/c net user administrator /active:yes"), "",SW_SHOWNORMAL);

    HWND pConsoleHandle = ::FindWindow(_T("ConsoleWindowClass"), NULL);
    if (NULL == pConsoleHandle)
    {
        //ShellExecute(0,"runas","cmd /c net user administrator /active:yes","","",1); 
        WinExec("cmd.exe", SW_SHOW);
        Sleep(1000);

        pConsoleHandle = ::FindWindow(_T("ConsoleWindowClass"), NULL);
        ASSERT(pConsoleHandle != NULL);
    }

    //AutoSendMessage(pConsoleHandle, "ipconfig");

    AutoSendMessage(pConsoleHandle, "cd C:\\Users\\jacky_dai\\Desktop\\Android Sign Test");
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "set PATH=\"C:\\Program Files\\Java\\jdk1.8.0_102\\bin\""); //Set java path
    //Sleep(500);
    //AutoSendMessage(pConsoleHandle, "java -versions");
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "java -jar apktool.jar d -f TestJNI.apk");
    Sleep(20000);
    AutoSendMessage(pConsoleHandle, "set PATH=\"C:\\Program Files\\Java\\jdk1.8.0_102\\bin\""); //Set java path
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "keytool -genkey -alias aeo_android.keystore -keyalg RSA -validity 20000 -keystore aeo_android.keystore");
    Sleep(5000);
    AutoSendMessage(pConsoleHandle, "123456");//输入密钥库口令
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "123456");//再次输入新口令
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "jacky");//您的名字与姓氏是什么?
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "xx");//您的组织单位名称是什么?
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "xx");//您的组织名称是什么?
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "xx");//您所在的城市或区域名称是什么?
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "xx");//您所在的省/市/自治区名称是什么?
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "cn");//该单位的双字母国家/地区代码是什么?
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "y");//  [否]:  Y
    Sleep(5000);
    AutoSendMessage(pConsoleHandle, "123456");//输入 <aeo_android.keystore> 的密钥口令
    Sleep(500);
    AutoSendMessage(pConsoleHandle, "123456");//再次输入新口令
    Sleep(500);

    //OnOK();
}
分享到:
评论

相关推荐

    Windows版本 Android Apk签名工具

    本篇将详细讲解Windows版本的Android Apk签名工具及其相关知识。 一、Android应用签名的重要性 Android系统要求每个发布到市场的APK文件都必须有一个数字证书签名。这个签名用于验证应用程序的开发者身份,确保应用...

    Apk签名工具(三种工具)

    在Android应用开发中,APK签名是一个至关重要的步骤,它确保了应用的完整性和来源的可信性。在本文中,我们将深入探讨三种常用的APK签名工具:AndroidResEdit、360签名工具以及爱加密签名工具。这三种工具分别提供了...

    安卓apk签名修改工具

    apk签名工具,自己定制个性的rom就轻而易举了!用这个签名apk文件,然后将apk安装到了模拟器中。 用的时候很简单,选择apk包,然后选择签名就可以。 1.有了这个软件,可以自己修改美化APK文件 2.用WINRAR打开APK...

    windows下android apk签名工具

    在Android应用开发中,APK签名是一个至关重要的步骤,它确保了应用的完整性和来源的可信性。在Windows环境下,开发者通常使用特定的工具来对APK进行签名,以使其能够在Android设备上顺利安装和运行。本文将详细介绍...

    万能apk签名工具(APK文件修改工具)V1.00 绿色版

    万能apk签名工具(APK文件修改工具)V1.00 绿色版 使用万能apk签名工具,自己定制个性的rom 就 轻而易举了!用的这个签名成功,然后将apk安装到了模拟器中。用的时候很简单,选择apk包,然后选择签名就可以。 运行它,...

    android10 apk签名文件

    在Android系统中,APK签名是一个至关重要的过程,它确保了应用的完整性和开发者身份的验证。在Android 10中,这个过程没有本质的变化,但随着系统的更新,签名文件的作用和安全要求更加严格。本篇文章将深入探讨...

    查看apk签名工具.rar

    APK签名是一个至关重要的步骤,它确保了应用的完整性和开发者身份的验证。本资源"查看apk签名工具.rar"提供了一个实用的工具,能够帮助开发者或者用户方便地查看APK的签名信息。 首先,我们需要理解APK签名的目的。...

    查看APK签名信息和版本号工具

    在这个场景下,"查看APK签名信息和版本号工具"显然是一个用于帮助开发者获取这些关键信息的实用工具,而"aapt.exe"则是实现这一功能的关键组件。 **aapt.exe**是Android Asset Packaging Tool的缩写,它是Android ...

    Android Apk签名工具

    在Android开发过程中,Apk签名是一个至关重要的步骤,它确保了应用的安全性和完整性。本文将深入探讨Android Apk签名工具的使用,以及它在构建和发布Android应用过程中的作用。 首先,我们需要理解什么是Apk签名。...

    apk签名工具

    "apk签名工具"是一种专门用于对APK文件进行签名的工具。在描述中提到的命令行操作展示了如何使用这个工具进行签名过程。下面我们将详细解释这个过程: 1. **Java运行环境**:首先,该过程依赖于Java环境,因为`java...

    APK签名工具.zip

    APK签名工具是Android开发过程中不可或缺的一环,用于确保应用的完整性和安全性。在Android平台上,每个可安装的APK文件都必须经过签名才能在设备上运行。这主要是因为签名能够验证应用程序的开发者身份,保证代码...

    android 对于apk签名汇总

    在Android系统中,APK签名是一项至关重要的过程,它确保了应用的安全性和完整性。APK是Android应用程序的打包格式,包含了所有的代码、资源文件以及元数据。本文将深入探讨APK签名的概念、目的、流程以及相关工具的...

    apk签名工具文件

    本文将深入探讨“apk签名工具文件”及其在安卓APK文件签名过程中的作用。 首先,理解APK签名的重要性至关重要。签名的主要目的是验证应用程序的来源,确保其未经篡改,并允许系统在安装时执行权限检查。签名还确保...

    APKSign apk签名软件

    标题中的“APKSign apk签名软件”指的是一个用于Android应用签名的工具,它使得开发者能够对APK文件进行签名过程,这是在发布Android应用程序到Google Play或其他第三方应用商店之前必须的步骤。签名验证了应用的...

    android apk签名工具

    这个过程涉及到了签名工具,正如标题所示,“Android APK签名工具”正是用于这个目的。当APK的数字签名过期或者在反编译修改了APK内部文件后,就需要用到这样的工具来重新签名。 签名的过程主要包括以下几个关键...

    apk签名工具apktool

    APK签名工具Apktool是Android开发者常用的辅助软件,它主要用于对APK应用程序进行反编译、修改和重新打包。本文将深入探讨Apktool的工作原理、主要功能以及如何使用它来签名APK。 首先,我们需要理解APK签名在...

    android开发 APK签名软件

    在Android应用开发中,APK签名是一个至关重要的步骤,它确保了应用的完整性和开发者身份。当遇到"android.keystore 拒绝访问"的问题时,通常是因为权限问题或者keystore文件损坏。针对这种情况,我们可以借助第三方...

    apk签名文件keystore制作生成工具

    因为在做安卓中文编程平台(ACP)的项目,用到了apk签名文件。这个签名工具目测和E4A相同界面哦。此源码已将-keypass 和-storepass 设置为相同密码。用到的模块:取DOS执行结果 取DOS执行结果.rar (2 KB, 下载次数:...

    APK签名打包文件

    APK签名打包文件是Android应用开发过程中的一个重要环节,它涉及到应用的安全性和发布流程。APK文件是Android应用程序的包,包含了所有应用运行所需的代码、资源文件和元数据。在APK发布之前,必须对其进行签名,以...

Global site tag (gtag.js) - Google Analytics