2011-03-21 51 views
0

我正在使用Eclipse构建应用程序。我把它用在我的设备上,我试图将它分发给几个朋友,让他们在他们的手机上测试它,但我发给他们与我安装在N1中的.apk相同,但他们无法安装它。Android:分发.apk文件进行测试并且不起作用

我试图从斌/文件夹内发送它们的版本,解压它作为一个未签名的应用程序或作为一个签署,具有相同的结果。

我的SDK目标是1.6,所以这不是问题,因为它们都有2.1+。

对我来说,主要的问题是,我必须测试在真实设备上的应用,因为模拟器不应该在网上冲浪,如果我通过代理连接到互联网。

我使用谷歌keytool,因为我使用了一些地图功能,所以我认为它可能是某种方式的错误来源,但我不知道我必须做些什么来解决这个问题。密钥只可用于我的设备吗?

我想,也许.apk文件不工作,我只能通过我的USB电缆安装它,但我可以从相同的电子邮件我给我的朋友安装我的应用程序。

在此先感谢!

编辑:我终于得到了一个朋友的设备,我得到的错误是以下,虽然我能够通过Eclipse(USB电缆)安装应用程序。

WARN/PackageInstaller(3317):解析清单时出现分析错误。停止安装

但是,如果清单错了,我将无法安装并运行应用程序,对不对?

回答

1

的谷歌地图API既有debugrelease键。因此,如果您正在使用调试密钥并生成释放apk,则地图API将不正确,并且您的地图不会加载任何图块。

你应该确保您使用的是从您发布的密钥库中生成的地图API密钥,并导出应用程序在释放模式。

+0

使用logcat的应用程序,我怎么能知道我有哪一个?因为我记得我不得不尝试不同的事情来获得我的钥匙,我真的不知道我终于得到了哪一个。 此外,可能有错误的关键使应用程序无法安装?那么在我的设备中它是如何完成安装和工作的? 如何在释放模式下导出我的应用程序?我所做的是: 1)右键单击项目文件夹2)从菜单中点击“Android工具”选项。 3)点击“导出签名的应用程序包...”和在给定应用程序别名中生成的.apk文件。 – JoanG 2011-03-21 17:31:55

+0

导出该方式应该创建一个签名的“发布”apk。释放密钥是使用您使用keytool创建的密钥库的md5生成的。调试密钥是使用ADT生成的debug.keystore的md5创建的。调试apk是你从应用程序bin目录中获得的。不正确的密钥不应影响安装。 – 2011-03-21 17:35:21

0

什么是安装失败时的logcat输出? 您可以通过USB端口连接到设备或从市场

+0

我不知道,因为在我的设备中它的工作原理。他们会在吐司消息中看到'错误的包裹'。 – JoanG 2011-03-21 17:36:57

+0

作为朋友尝试它或借用他的设备 – sherif 2011-03-21 18:21:19

+0

嗨,我可以让我的一个朋友让我借用他的设备,并且编辑我的答案以显示我通过Logcat获得的错误。 – JoanG 2011-03-29 10:30:56