我可以通过电子邮件发送apk文件而无需创建密钥库/签署我的应用程序吗?

时间:2012-09-19 22:11:30

标签: android apk

我想通过电子邮件将我的apk文件发送给某人。我首先从我的apk文件夹中复制/bin文件,但是当它安装在另一台设备上时,它获得了Parse Error。我一直在环顾四周,发现了人们说要导出文件的一些问题。我开始了导出过程,但它要求我创建一个密钥库。我不太确定它是什么,但从我所看到的是你如何签署你的申请。

无论如何在没有签署申请的情况下将apk文件发送给某人?

如果用户将平板电脑设置为调试模式,是否需要对应用程序进行签名?

它在我的测试设备上运行,是因为我通过eclipse运行它?

如果我需要签署我的申请,这是永久性的举动,还是我可以回去编辑我所做的事情?

由于

2 个答案:

答案 0 :(得分:3)

阅读官方开发指南 - Signing Your Applications,它会回答您的所有问题。

是否有人在没有签署申请的情况下向某人发送apk文件?

是的,通过电子邮件,闪存驱动程序等,但他们将无法安装它们。

如果用户将平板电脑设置为调试模式,是否需要对应用程序进行签名?

  

所有申请必须签名。如果未签名,系统将不会在仿真器或设备上安装应用程序。

它在我的测试设备上运行,是因为我通过eclipse运行它?

  

为了测试和调试您的应用程序,构建工具使用由Android SDK构建工具创建的特殊调试密钥为您的应用程序签名。

如果我需要签署我的申请,这是永久性的举动,还是我可以回去编辑我所做的事情?

一般来说,您可以在代码中编辑您想要的所有内容,签名仅适用于Google Play的发布流程,如果您希望您的用户收到更新,请使用相同的密钥库签署修改后的apk。因此,请确保安全地保留您自己的私有密钥库文件,可能是在云中,因为相同的私钥不可重新创建。有关更多详细信息,请参阅开发指南。

答案 1 :(得分:3)

如果您正在使用Eclipse,则可以右键单击该项目并选择“Android Tools> Export Unsigned Application”(如果需要,还可以选择签名应用程序)。

我不知道Android是否允许安装未签名的应用程序。可能不是,我的猜测。

你有什么理由不想签名吗?这真的不难。

如果你在Mac或Linux上工作,可以通过命令行轻松完成:

如果您的系统上安装了Java,则keytool应该已经在您的路径中。您还希望在路径中也放置 androidsdk / tools /,或者只要您想使用它就可以输入完整路径。

只需提供以下命令:

  keytool -genkey -alias JuiCe -validity 20000 -keystore ~/.android/my-keystore
  jarsigner -keystore ~/.android/my-keystore myApplication.apk JuiCe
  zipalign -v 4 myApplication.apk myapp.zip

然后将myapp.zip发送给您的用户。

编辑添加:

我认为yorkw有更好的答案。

我还想提一下,Eclipse用来为你签名你的apk的调试签名应该。我怀疑apk在交付给您的用户时以某种方式损坏了。或许你安装错了。

首先,在接收设备上,您需要转到设置>应用程序并检查未知来源

接下来,如果adb可用,请执行“adb install myapp .apk”。

如果adb不可用,请将apk文件放在SD卡上的某个位置并运行文件管理器(OIFileManager或Astro是不错的选择)。文件管理器允许您在设备上安装apk。

您也可以让您的用户从互联网上下载apk。然后浏览器的下载菜单项将允许您安装它。