我想将我的应用程序更新到 playstore,但我丢失了密钥库密码。现在我正在尝试创建一个新的。如果我用另一个密钥库密码构建 APK 会有什么问题吗?
5 回答
正如@CRUSADER 所说,Android Keystore Password Recovery可能对您有用。我可以用它找回我的密码。这是如何做到这一点的。我在 Windows 7 上。
运行以下命令,
java -jar AndroidKeystoreBrute_v1.05.jar
然后您将获得以下指南,
AndroidKeystorePasswordRecoveryTool by M@xiking
Version 1.03
There are 3 Methods to recover the key for your Keystore:
1: simply bruteforce - good luck
2: dictionary attack - your password has to be in the dictionary
3: smart dictionary attack - you specify a dictionary with regular pieces you use in your passwords. Numbers are automat
icly added and first letter will tested uppercase and lowercase
args:
-m <1..3> Method
-k <path> path to your keystore
-d <path> dictionary (for method 2 and 3)
-w saves the certificate in a new Keystore with same passwort than key
-start <String> sets start String of the word (for method 1)
-p use common replacements like '@' for 'a'(for method 3) WARNING - very slow!!
-h prints this helpscreen
Max memory: 247M
我使用了方法 2,因为我猜出了我的密码。我输入了以下命令,
java -jar AndroidKeystoreBrute_v1.05.jar -m 2 -k android.keystore -d dict.txt
如果您可能想知道,我的 dict.txt 是这样的,
gussedpassword1
gussedpassword2
gussedpassword3
我可以成功找回我的密码和别名。
好吧,您不是第一个丢失密钥库密码的人。
当我被卡住时,我用这个来蛮力:Android Keystore recover
你可以猜测一下。
正如@StinePike 提到的......你不能继续更新你现有的应用程序
上传新应用程序不会有问题。但是您不能继续使用新的密钥库更新现有应用程序。如果要更新以前的应用程序,则需要通过重新提交来创建新应用程序。
始终以最佳方式保留密钥库:(
如果您丢失了密钥库的密码,那么唯一的选择是创建一个新的签名密钥。这样做不会有问题。
但是,您将无法更新现有应用程序。你也不能上传另一个同名的应用程序package
。
例如,如果您当前的包是:
com.example.mycurrentapp
您将需要使用不同的包名称来配合您的新签名密钥。例如,您可以将包名称更改为:
com.example.mynewapp
以上当然是插图。;-)
Google Play 生态系统使用它们的包名称来识别不同的应用程序,因此它们必须是唯一的。不幸的是,如果您拥有良好的用户群,除非他们安装您的新应用,否则他们将无法获得旧应用的更新。
不幸的是,当您丢失密钥库或密钥库的密码时,您的应用程序将成为孤立的。您唯一能做的就是使用新密钥将您的应用重新提交到市场。没有密钥,您将无法更新您的应用程序。
您必须使用新的密钥库和不同的包名称再次发布您的应用程序,或者记住您的密码。