热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何在androidstudio中检索签名APK的密钥别名和密钥密码(从Eclipse迁移)

如何解决《如何在androidstudio中检索签名APK的密钥别名和密钥密码(从Eclipse迁移)》经验,为你挑选了13个好方法。

我有一个目前在Google Play上发布的Android应用,我会定期更新.我按照以下流程在新推送之前签署应用程序:

在项目上按鼠标右键,"Android工具" - >导出已签名的应用程序包提供密钥库密码签署您的应用程序将apk文件上传到Google Play开发者控制台

最近我将项目从Eclipse导入到Android Studio并继续在Android Studio上工作.现在我打算在应用程序中推送一个修复程序.我想我有这个选项在android studio中签名apk

构建 - >生成签名的apk - >在此输入图像描述

根据我的理解,对于我的Android应用程序,我必须使用我之前用于将更新推送到Google Play的相同密钥库和密钥库密码.此外,它还要求密钥别名和密钥密码.在Eclipse中签名apk时,我不记得密钥别名和密钥密码(图像中的数字4输入).有什么建议我现在能做什么?如果我已经知道我的密钥库和密钥库密码,有没有办法检索密钥别名和别名密钥密码?

更新:现在我可以通过keytool -list -v -keystore name.keystore命令检索我的密钥别名



1> 小智..:

在Mac上,我在更新Android Studio之前在早期日志报告中找到了密钥库文件路径,密码,密钥别名和密钥密码.

我启动了Console实用程序并向下滚动到〜/ Library/Logs - > AndroidStudioBeta - > idea.log.1(或任何旧的日志编号)

然后我搜索了"android.injected.signing.store"并从较早的日期发现了这个:

-Pandroid.injected.signing.store.file=/Users/myuserid/AndroidStudioProjects/keystore/keystore.jks, 
-Pandroid.injected.signing.store.password=mystorepassword, 
-Pandroid.injected.signing.key.alias=myandroidkey, 
-Pandroid.injected.signing.key.password=mykeypassword,


你是个上帝.如果你在Windows上,那么转到`.AndroidStudioX.X(xx是版本号,例如1.5)> system> log> idea`
哇!你救了我的一天,我的月和我的一年!太棒了!:)但在我的情况下(Android 2.2),密码显示为:********.在Windows`C:\ Users\yourUser\.Android2.2\system\log\idea.log.1`上
你救了我!:)
@ Error404密码显示在第一个*****部分的下方.它在Android 2.2上与我合作
不幸的是,它不适用于Windows和Android Studio 3.3。用********隐藏的密码
你救了我的命!

2> MSIslam..:

我终于可以解决这个问题了.

获取密钥别名:我将keytool.exe和我的密钥库文件复制到C:\ Program Files\Java\jdk1.7.0_71\bin文件夹中.然后从命令提示符我写道:keytool -list -v -keystore .keystore 它还会询问密钥库密码.然后它会显示关键别名和证书指纹和其他信息.

然后我再次尝试为项目生成签名Apk,我提供了密钥库,密钥库密码,密钥别名并提供了相同的密码.然后它要求主密码,我尝试了同样的,它失败了.使用重置选项,我在此处重置主密码.



3> Marcin Orlow..:

如何检索密钥库密码

您无法检索密码.如果你忘了它,你就注定了.

如何检索密钥别名

$ keytool -list -v -keystore 

但是你首先需要密钥库密码.

编辑

我不记得的是'密码'

无法恢复密码.如果您忘记了密码密码,那么您也注定要失败,除了更加努力地回忆它之外别无他法.没有密码重置的东西,也没有类似的东西.

请注意,如果您忘记了密码,那么您将不再对您的应用程序发出更新(docs):

警告:将密钥库和私钥保存在安全可靠的位置,并确保对其进行安全备份.如果您将应用发布到Google Play,然后丢失了用于对应用进行签名的密钥,那么您将无法向应用发布任何更新,因为您必须始终使用相同的密钥对应用的所有版本进行签名.


我记得密钥库密码.我也有密钥库,现在我记得Key Alias.我不记得的是"密码"(图中的数字4框).

4> Lucky Rana..:

在Windows中 - 只需在记事本中打开密钥库文件,在第一行 - 您可以看到用英文字母书写的别名.


在Mac上,您可以使用TextEdit执行此操作

5> 小智..:

根据gkemp的答案,在Windows上,我在更新Android Studio之前在早期的日志报告中找到了密钥库文件路径,密码,密钥别名和密钥密码.

从Windows文件浏览器c:/用户/您的电脑名称/ .AndroidStudio1.4(您的Android工作室版本)\ system\log\idea.log.1(或任何旧的日志编号)

然后我搜索了"android.injected.signing.store"并从较早的日期发现了这个:

-Pandroid.injected.signing.store.file= path to your keystore 
-Pandroid.injected.signing.store.password=yourstorepassword
-Pandroid.injected.signing.key.alias=yourkeyalias
-Pandroid.injected.signing.key.password=yourkeypassword



6> 小智..:

在ubuntu中,我们可以从给定路径中找到与密钥库相关的所有密码.

/home/user/.AndroidStudio2.2(current version)/system/log/idea.log.x(older versions)

编辑文件并搜索android.injected.signing.store,然后就可以找到密码了.

-Pandroid.injected.signing.store.file= path to your keystore 
-Pandroid.injected.signing.store.password=yourstorepassword
-Pandroid.injected.signing.key.alias=yourkeyalias
-Pandroid.injected.signing.key.password=yourkeypassword


是的,它也适用于Studio 2.3.
谢谢......工作了!

7> thatzprem..:

要恢复KEY ALIAS.在终端上键入以下命令.

$ keytool -list -v -keystore 

它将提供信息开始,

您的密钥库包含2个条目...

您可以在那里查找别名.



8> shyam..:

恢复您的密钥库密码

100%工作

Projects->taskHistory.bin

Find->KeyAlias

注意:单击并查看我的图像以供参考



9> Maharshi Adi..:

我在下面的路径中找到了我的密钥密码

Project\.gradle\2.14.1\taskArtifacts\taskArtifacts.bin 打开文件并使用您记住的密码部分进行搜索.你肯定会发现它.

此外,您可以参考此答案stackoverflow.com/a/43007357/7089151



10> 小智..:

是的,您可以在Android Studio的任务工件中找到丢失的密钥。

Project\.gradle\2.14.1\taskArtifacts\taskArtifacts.bin

对于更新版本的android studio,路径为:

Project\.gradle\5.1.1\executionHistory\executionHistory.bin

打开文件,然后使用您记得的一部分密码进行搜索。

示例(将在该bin文件中): signingConfig.keyAlias?"key name"?signingConfig.keyPassword?"key password"?signingConfig.storePassword?"Store Password"?

您可以使用此字符串“ signingConfig.storePassword”或示例字符串中提供的任何字符串进行搜索

注意:我也经历过同样的事情,并且可以在上述路径中找到它。如果找不到,则清除所有缓存和临时文件。



11> Varun..:

如果在日志中查找无济于事,您还可以尝试暴力破解此密码-Android KeyStore密码恢复中的密码检查方法3 。

该SO帖子还有更多答案。



12> 小智..:

只需使用notepad ++打开密钥文件(.jks文件)。您将在第一行中获得别名...



13> 小智..:

您可以按以下方式查找密钥库详细信息,而无需使用密码。

keytool -list -keystore 在命令提示符下执行命令()

您可以在我的机器的java文件夹中找到Keytool,可以从以下路径找到它

C:\Program Files (x86)\Java\jdk1.7.0_71\bin> keytool -list -keystore C:\.Keystore

然后,它将要求您输入密码,在这里您不需要输入密码,而只需按向上箭头按钮并输入。然后将显示以下相同的详细信息和警告消息。

*****************警告警告警告*****************

存储在密钥库中的信息的完整性*

尚未验证!为了验证其完整性,*

您必须提供密钥库密码。*

*****************警告警告警告*****************

密钥库类型:JKS密钥库提供者:SUN

您的密钥库包含1个条目

samplekey,2017年4月26日,PrivateKeyEntry,证书指纹(SHA1):XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX :XX:XX


推荐阅读
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 本文介绍了如何使用JSONObiect和Gson相关方法实现json数据与kotlin对象的相互转换。首先解释了JSON的概念和数据格式,然后详细介绍了相关API,包括JSONObject和Gson的使用方法。接着讲解了如何将json格式的字符串转换为kotlin对象或List,以及如何将kotlin对象转换为json字符串。最后提到了使用Map封装json对象的特殊情况。文章还对JSON和XML进行了比较,指出了JSON的优势和缺点。 ... [详细]
  • 本文介绍了一种轻巧方便的工具——集算器,通过使用集算器可以将文本日志变成结构化数据,然后可以使用SQL式查询。集算器利用集算语言的优点,将日志内容结构化为数据表结构,SPL支持直接对结构化的文件进行SQL查询,不再需要安装配置第三方数据库软件。本文还详细介绍了具体的实施过程。 ... [详细]
  • Hibernate延迟加载深入分析-集合属性的延迟加载策略
    本文深入分析了Hibernate延迟加载的机制,特别是集合属性的延迟加载策略。通过延迟加载,可以降低系统的内存开销,提高Hibernate的运行性能。对于集合属性,推荐使用延迟加载策略,即在系统需要使用集合属性时才从数据库装载关联的数据,避免一次加载所有集合属性导致性能下降。 ... [详细]
  • 项目运行环境配置及可行性分析
    本文介绍了项目运行环境配置的要求,包括Jdk1.8、Tomcat7.0、Mysql、HBuilderX等工具的使用。同时对项目的技术可行性、操作可行性、经济可行性、时间可行性和法律可行性进行了分析。通过对数据库的设计和功能模块的设计,确保系统的完整性和安全性。在系统登录、系统功能模块、管理员功能模块等方面进行了详细的介绍和展示。最后提供了JAVA毕设帮助、指导、源码分享和调试部署的服务。 ... [详细]
  • 本文整理了Java中org.apache.hadoop.hive.ql.plan.ExprNodeColumnDesc.getTypeInfo()方法的一些代码示例,展 ... [详细]
  • 初探PLC 的ST 语言转换成C++ 的方法
    自动控制软件绕不开ST(StructureText)语言。它是IEC61131-3标准中唯一的一个高级语言。目前,大多数PLC产品支持ST ... [详细]
  • 概述H.323是由ITU制定的通信控制协议,用于在分组交换网中提供多媒体业务。呼叫控制是其中的重要组成部分,它可用来建立点到点的媒体会话和多点间媒体会议 ... [详细]
  • android ... [详细]
  • Maven构建Hadoop,
    Maven构建Hadoop工程阅读目录序Maven安装构建示例下载系列索引 序  上一篇,我们编写了第一个MapReduce,并且成功的运行了Job,Hadoop1.x是通过ant ... [详细]
  • java线条处理技术_Java使用GUI绘制线条的示例
    在Java的GUI编程中,如何使用GUI绘制线条?以下示例演示了如何使用Graphics2D类的Line2D对象的draw()方法作为参数来绘制一条线。 ... [详细]
  • 前一天学习了视图按键事件的监听。首先新建了一个自定义的视图,在自定义视图中,重新编了其构造函数和onDraw()方法。之后将该视图用于应用程序,最后添加该视图的按键监听器,在监听器中对KeyEvent ... [详细]
author-avatar
Blackage
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有