android加固簽名工具(源碼下載)

來源:互聯網
上載者:User

標籤:

背景

每次android加固了都要命令列簽名好麻煩,正好之前做了個表徵圖產生工具。

所以改了改,比寫批處理還要省事。

原理

其實就是用winform程式調用控制台執行命令,android簽名的命令如下

%JAVA_HOME%\bin\jarsigner -digestalg SHA1 -sigalg MD5withRSA -verbose -keystore [你的keystore] -signedjar [簽名好的路徑] [要簽名的路徑] [keystore的別名]

在介面裡面選擇了參數之後彈出控制台,輸入密碼就行了,非常省事(貌似密碼也可以放進參數,懶得研究了,有知道的大神求評論給出)。

 

介面效果

之前icon產生工具改的,簡單點就行。

icon產生的功能把ios的尺寸閹割了。

順著自上而下的步驟點擊就行。

如果你沒有在環境變數裡設定JAVA_HOME參數,程式啟動會有提示,如果設定了就不需要再點擊“配置JAVA目錄”了。

如果自己配置JAVA目錄,指向JDK的根目錄就行,不要指向BIN。

 

關鍵源碼

一如既往的,所有源碼都有注釋。請不要挑剔命名..半個小時弄的東西。

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Diagnostics;using System.IO;namespace WindowsFormsApplication1.DAL{    public class Signture    {        public static string cmdFormat = "{0}\\bin\\jarsigner";        public static string cmdStrFormat = " -digestalg SHA1 -sigalg MD5withRSA -verbose -keystore {0} -signedjar {1} {2} {3}";        /// <summary>        /// 檢查java環境        /// </summary>        /// <returns></returns>        public static bool isJavaEnvirSettled()        {            return string.IsNullOrEmpty(Environment.GetEnvironmentVariable("JAVA_HOME"));        }        /// <summary>        /// 運行cmd命令        /// 會顯示命令視窗        /// </summary>        /// <param name="cmdExe">指定應用程式的完整路徑</param>        /// <param name="cmdStr">執行命令列參數</param>        public static bool RunCmd(string cmdExe, string cmdStr)        {            bool result = false;            try            {                using (Process myPro = new Process())                {                    //指定啟動進程是調用的應用程式和命令列參數                    ProcessStartInfo psi = new ProcessStartInfo(cmdExe, cmdStr);                    myPro.StartInfo = psi;                    myPro.Start();                    myPro.WaitForExit();                    result = true;                }            }            catch            {            }            return result;        }        public static string savePath(string file)        {            string filePath = Path.GetDirectoryName(file);            string fileName = Path.GetFileNameWithoutExtension(file);            return filePath + "\\" + fileName + ".signed.apk";        }    }}
View Code
private void buttonX4_Click(object sender, EventArgs e)        {            //執行            string align=textBox1.Text;            string savedPath = DAL.Signture.savePath(apkPath);            string cmd = string.Format(DAL.Signture.cmdFormat, javaPath);            string cmdStr = string.Format(DAL.Signture.cmdStrFormat, keyPath, savedPath, apkPath, align);            DAL.Signture.RunCmd(cmd, cmdStr);        }
View Code

 

你還能幹些啥

因為代碼已經放在這裡了,而且已經滿足我自己需要了,所以等功能更新那就只有等我也用的上的時候改了。。

1.你可以開發一下腦洞簡單改改用來批量打渠道包

2.拿來執行其他的命令,比如取md5碼之類的

 

源碼地址:

連結:http://pan.baidu.com/s/1c2YAD4 密碼:uvy9

 

P.S. 
自己在做獨立開發,希望廣結英豪,尤其是像我一樣腦子短路不用react硬拼anroid、ios原生想幹點什麼的朋友。

App獨立開發群533838427

公眾號『懶文』-->lanwenapp<--

android加固簽名工具(源碼下載)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.