1.下载空包
首先登录你的开发者平台,然后找到你上传应用的地方,查看平台有没有上传这个包名的应用,如果有就认领,这里我用的是VIVO开放平台,下图是应用认领界面。
点击图中蓝色字体进行下载,下载解压之后,你会看到两个这样的文件。
vivo_unsign.apk是平台未签名的空包,您需要做的就是把您当前需要上架应用市场的项目的签名添加到这个apk中。
你听说过吗?你的脑袋嗡嗡作响。为了更生动,我将使用我之前编写的演示来演示它。
决定是你了,TranslateDemo,这是一个百度翻译Demo。如果你看过这篇博客,应该还记得。接下来,获取keystore文件。
2. 获取密钥库
其实我们在生成jks文件的时候,会有一个小提示,类似下面的
**JKS keystore 使用特殊格式,建议使用“keytool -importkeystore -srckeystore xxx.keystore -destkeystore xxx.keystore -deststoretype pkcs12”进行迁移。
移至行业标准格式 PKCS12。**
说你不符合行业标准之类的。但通常我们并不关心这个,它只是要求你生成密钥库文件。
那么这个keystore在哪里生成呢?首先打开你的项目,然后在底部菜单中找到Terminal空包,点击它进入你项目当前目录,如下图:
然后输入
keytool -genkey -alias jks 别名 -keyalg RSA -validity 20000 -keystore 密钥库名称
比如我的别名是key0,我希望生成的keystore名字是translate.keystore,那么可以这样写。
keytool -genkey -alias key0 -keyalg RSA -validity 20000 -keystore convert.keystore
然后输入密钥的密码,验证密码,然后填写一些相关信息。
如果你忘记了这些信息,你可以通过当前的jks和密码进行检查。
例如,你打开一个新的终端并在其中输入以下代码:
keytool -list -v -keystore 你的 jks 路径
我的路径是D:\APK\translate.jks所以就这样写就可以了
keytool -list -v -keystore D:\APK\translate.jks
然后回车,输入密码再回车空包,就可以查看到创建时的信息了。
然后切换到Local。按要求输入。因为之前创建了jks,所以只输入了我的名字,其他什么都没输入。如果没有答案,直接回车跳过。最后一个问题,问你是否正确,输入Y。如下图:
然后按 Enter。
由于我的别名密码和keystore密钥相同,所以直接回车,然后就会出现下图所示的提示,复制我标注的代码,按照自己的实际情况来即可。
粘贴到下面,回车,输入密码,keystore文件就创建成功了。
这个文件在哪里呢?如下图:
是不是很麻烦,在写出上述内容之前,我不知道看了多少博客,遇到了多少坑。
现在我们有了密钥库,我们需要对它进行签名。然而,签名过程中有很多陷阱。
3. 空包签名
首先请安装JDK,若未安装,请参见JDK安装及环境变量配置(Win10详解版)完成安装。
然后进入jdk安装目录的bin目录,例如我的目标地址是:C:\Program Files\Java\jdk1.8.0_162\bin
然后以管理员身份打开命令提示符。
管理员打开方式不一样,如下图:
接下来把未签名的vivo_unsign.apk、translate.jks、translate.keystore三个文件复制到bin目录下,都需要管理员权限,按照下图操作即可。
然后通过cd C:\Program Files\Java\jdk1.8.0_162\bin进入此文件目录:
引用格式如下:
jarsigner -verbose -keystore签名文件路径 -signedjar签名后的APK保存地址路径 未签名的APK地址路径 签名文件别名
我举个例子吧:我刚刚复制了三个文件到bin里面去了,希望签名后的apk也放在bin里面,所以就会这样。
签名文件路径:translate.keystore
我先自我介绍一下,我2013年毕业于上海交通大学,在小公司工作过,也进过华为、OPPO等大公司,2018年加入阿里巴巴,一直到现在。
我知道大部分想要提升技术的Android工程师往往都是自学或者上课,但培训机构的学费动辄几千元,压力真的很大。没有系统的自学效率低、耗时长,而且很容易碰天花板、停滞不前!
因此我收集整理了一本《2024年Android移动开发全套学习资料》,初衷很简单,就是为了帮助那些想要提升自己却不知道从何下手的朋友,同时也减轻大家的负担。
里面既有适合新手学习的零基础资料,也有适合经验3年以上小伙伴深入学习提高的进阶课程,基本覆盖了95%以上的Android开发知识点,真正做到了系统化!
由于文件比较大,这里只截图了部分目录大纲,各个节点都有工厂访谈、学习笔记、源码讲义、实战项目、讲解视频,后续会持续更新。
如果你觉得这些内容对你有帮助的话,可以加V获取:vip204888(安卓端注意)
推荐学习材料
一个人可以走得快,但一群人才能走得更远。无论你是IT行业资深人士,还是对IT行业感兴趣的新人,都欢迎扫描二维码加入我们的圈子(技术交流、学习资源、职场吐槽、大公司内部推荐、面试辅导),让我们一起学习成长!
[外部链接图片正在转移...(img-hEg2uurc-21)]
[外部链接图片正在转移...(img-p3zNYNhC-21)]
一个人可以走得快,但一群人才能走得更远。无论你是IT行业资深人士,还是对IT行业感兴趣的新人,都欢迎扫描二维码加入我们的圈子(技术交流、学习资源、职场吐槽、大公司内部推荐、面试辅导),让我们一起学习成长!
[外部链接图片正在转移...(img-ATReXeB6-22)]
以上内容均来自网络搜集,如有侵权联系客服删除