Unity unsigned(debug) 模式下的签名理解

用unity打包apk时,通常渠道都会进行二次签名,因此经常有人选择签名时用Unity unsigned(debug) 模式,但是也有部分渠道不会去重新签名(比如360),这个时候每次更新包,就必须用最开始打包的机器去打包,否则会出现签名不一致,这样很麻烦。

后来研究后发现,其实unity中的unsigned(debug)打出来的包也是有签名的,其取用的签名文件是我们机器上面adt中生成的debug.keystore。理解了这个原理后,一切问题就迎刃而解了。下次打包好后,只要用最初那个机器的debug.keystore重新签名

一次就可以了。下面是具体的操作方法:

1、首先进入到apk所在的目录,把待签名的keystore文件也放入此目录,然后执行下面的命令
jarsigner -verbose -keystore debug.keystore -signedjar signed.apk unsign.apk mine.keystore
参数说明:
-verbose参数表示:显示出签名详细信息
-keystore表示使用当前目录中的debug.keystore签名证书文件。
-signedjar signed.apk 表示签名后生成的APK名称,
unsign.apk表示未签名的APK Android软件,
mine.keystore表示别名

2、查看签名后的指纹及md5信息,命令参数如下:
keytool -printcert -file C:\Users\Administrator\Desktop\APKSign\Test\petsigned\META-INF\ANDROIDD.RSA

ps:eclipse中会默认生成一个debug.keysotre,其信息如下:

Keystore名字:“debug.keysotre”
Keystore密码:“android”
Key别名:“androiddebugkey”
Key密码:“android”
eg:jarsigner -verbose -keystore debug.keystore -signedjar test_singed.apk test_unsigned.apk androiddebugkey

时间: 2024-08-01 09:06:13

Unity unsigned(debug) 模式下的签名理解的相关文章

Android studio build.gradle配置,debug模式下使用正式版签名,重命名apk

在build.gradle文件中,android节点下进行配置. android { compileSdkVersion 22 buildToolsVersion '22.0.1' signingConfigs { release { keyAlias 'xxx' keyPassword 'xxxxxxxxxxxx' storeFile file('./xxx.keystore') storePassword 'xxxxxxxxxxxxxxxx' } config { keyAlias 'xxx

DEBUG模式下, 内存中的变量地址分析

测试函数的模板实现 [cpp] view plain copy /// @file my_template.h /// @brief 测试数据类型用的模板实现 #ifndef MY_TEMPLATE_H_2016_0123_1226 #define MY_TEMPLATE_H_2016_0123_1226 template<int iArySize> void fnTestDataType() { char szBuf[iArySize] = {'\0'}; unsigned short wT

IDEA Debug模式下启动慢的解决办法

工程没有做什么大的改动,近期Idea在debug模式下启动耗时800s +,run模式下200s.Idea debug模式启动的时候会有这样的提示: 方法断点会戏剧性的降低debug的速度.当时并没有在意,因为并不清晰这个方法断点是个什么概念.....看了网友的帖子,才知道这个method breakpoints就是方法签名上的断点.idea的这个提示能否更人性化点,就叫method signature breakpoints好了,搞个method breakpoints谁TMD知道.. ---

Django -&gt; debug模式下的静态文件服务(/media/)

正式发布django项目的时候,如果存在静态文件(一般会统一放在名称为media或static的目录下),则需要建立url到文件系统的映射,例如,使用nginx的时候我们需要进行这样的配置. # Django media location /media { alias /home/lyndon/github/Mathematician/dijkstra/media; } location /static { alias /home/lyndon/github/Mathematician/dijk

Debug模式下编译溢出问题

问题: 代码在Debug模式下编译报出内存溢出的错误,而Release模式下则没有. 由于Debug模式下包含调试信息,并且不作任何优化.而Release模式进行了各种优化,内存检测等操作均省去,使得程序在代码大小和运行速度上都是最优的. 方法1: 猜测Release对代码进行了优化或者根本就没有进行内存检测,才导致Release模式下编译通过的.于是我进行了代码缩减,删除没有用的变量,问题仍然没有解决. 方法2: 我发现在Debug模式下,main.c文件淡黄色, ,Release模式下仍然为

eclipse在debug模式下自动跳到ThreadPoolExecutor解决方案

困扰了很长时间的一个问题,以前没有自己研究,今天终于解决了. 使用eclipse时,如果tomcat设定的是热加载,当修改一些程序后,tomcat自动加载修改内容..... 但是很多次都会自动跳到debug模式,很是讨厌... 原因是eclipse的设置问题:默认[Suspend execution on uncaught exceptions]是选中的,则eclipse在遇到未捕获的异常时会停止..... 修改方法,就是去掉选中的checkbox即可 参考文章:http://hi.baidu.

在Debug模式下中断, 在Release模式下跳出当前函数的断言

在Debug模式下中断, 在Release模式下跳出当前函数的断言 #ifdef DEBUG #define __breakPoint_on_debug asm("int3") #else #define __breakPoint_on_debug #endif // 验证 #define UXY_ASSERT_RETURN_ON_RELEASE( __condition, __desc, ... ) \ metamacro_if_eq(0, metamacro_argcount(__

eclipse的debug模式下启动不了tomcat

使用eclipse启动tomcat,正常模式下可以启动tomcat,却在debug模式下无法启动tomcat. 这个问题可能是由于eclipse和tomcat的交互而产生的,在以debug模式启动tomcat时,发生了读取文件错误,eclipse自动设置了断点,导致tomcat不能正常启动. 解决方法把breakpoints veiw都删除就好了,步骤如下:window->show view->Breakpoints.在Breakpoints视图中右键,Remove all

Django -&amp;gt; debug模式下的静态文件服务(/media/)

正式公布django项目的时候,假设存在静态文件(通常会统一放在名称为media或static的文件夹下),则须要建立url到文件系统的映射,比如.使用nginx的时候我们须要进行这种配置. # Django media location /media { alias /home/lyndon/github/Mathematician/dijkstra/media; } location /static { alias /home/lyndon/github/Mathematician/dijk