从开发者签署APK

3

需要知道的事情:

  1. 我对编程有点新
  2. 我已经在我的Macbook Pro上安装了带有Android平台的Eclipse
  3. 我还有两台电脑,以便进行进一步的故障排除和灵活性操作

我委托开发人员将iOS应用程序移植到Android平台。我没有自己构建这个应用程序,而是支付其他人来完成。我能够通过adb协议成功运行avd和模拟器,并进行安装/卸载/重新安装。现在,我要签署APK以发布到Android市场,但我卡在这里了。我尝试了很多方法,但都无济于事。我认为我遇到的问题是我找到的材料已经过时了。

我尝试过的方法:

  1. 在我的PC上使用命令提示符,按照此处的说明使用keytool命令,成功完成了前半部分,但当提示进行后半部分时,我不断收到“无法找到jvm.dll”的错误消息。这个人遇到了类似的问题,但没有说明如何解决它,他显然已经解决了。注意:我在任何一台电脑上都找不到jarsigner.exe。我从网站上下载了它。可能是损坏或无效的。我永远无法得到签名的APK。
  2. 我在这个网站上找到了“signapk.rar”,它似乎真的起作用了。我完全按照说明操作,它生成了应该生成的签名APK。问题是当我尝试上传时,市场告诉我它在2033年之前就过期了,不知道那是什么日期。所以我认为,这个程序中的代码有一个足够大的有效性条目。如果这是问题,我不知道如何更改它。
  3. 昨天我发现了Portecle,并成功创建了密钥库和证书。我知道它们在我的目录中的位置,但我不知道如何使用它来签署APK。这太令人困惑了。
  4. 在Eclipse中签署。这是最不成功的方法,因为我无论如何都无法弄清楚该死的东西该怎么用。我知道我不能只是“导入apk”,然后像魔术一样工作,但如果可以的话,那就太好了。我创建了一个新项目,并在将我的APK更改为ZIP后导入了文件系统。有一次它导入了清单,另一次它什么也没做。我确定这是用户错误。

我知道如果这是一个简单的过程,每个人都可以成为一名开发者。但显然并非如此,所以在我的开发者出国期间,我正在尝试自己解决问题。非常感谢任何帮助。


在我的情况下,使用OSX在需要进行Android开发的工具方面几乎没有出现任何问题。也许您可以尝试使用Macbook并遵循官方的签名文档 - harism
可能是如何签署Android APK文件的重复问题。 - Bo Persson
1个回答

0

假设:

  1. 假设您已经生成了keystore(用于签名apk的私钥)。如果yourApp-unsigned.apk已经由您的供应商或您自己生成,则可以使用命令行进行签名,而不需要使用eclipse或android studio。

  2. 以下步骤使用Windows操作系统

签署apk:

将您的jdk bin路径添加到系统变量中(如果您不知道如何添加,请搜索“如何将路径添加到Windows系统变量”) 这是我的jdk路径(请使用您自己的)

C:\程序文件\Java\jdk1.8.0_25\bin

打开命令提示符,并使用您的应用apk和keystore密钥键入以下内容:

jarsigner -verbose -keystore c:\users\android\myAppKeyStore.keystore c:\users\blabla\Desktops\myAppAPK.apk my_keystore_alias

如果成功,它会提示您输入您的私钥(用于生成私钥的那个)的密码/短语,您应该知道这个密码/短语

使用命令行验证它已成功签名

jarsigner -verify c:\users\blabla\Desktops\myAppSignedAPK.apk

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接