【问题标题】:Error when parsing a custom apk file解析自定义 apk 文件时出错
【发布时间】:2011-12-30 16:19:13
【问题描述】:

我今天开始研究 Android 编程,并创建了一个可以播放 MP3 的非常小的应用程序。我使用的工具有Android SDK 和eclipse。该代码在 Android 模拟器中完美执行,但在导出它并尝试在我的三星 Galaxy S2 上安装 apk 后,我收到一条消息,告诉我解析文件时出错。

这是我手机的配置:Android v2.3.3,从未知来源安装 = 允许,USB 调试 = 启用。我的项目的目标系统也已设置为 Android v2.3.3,并且 AVD 的 CPU 架构已设置为 ARM (armeabi)。

我在导出 apk 时使用自定义 keystone 对其进行了签名,因为我最初认为问题可能是在真实设备上无法使用的调试密钥。

我尝试同时使用内部文件资源管理器和自定义资源管理器(ES 文件资源管理器)来安装应用程序,但没有成功。

非常感谢有关如何让我的手机执行我的自定义应用程序的建议。 :)

【问题讨论】:

  • 您导出的是签名还是未签名?
  • 我假设我已将其导出为签名,因为 Android 文档指出“您可以使用 Eclipse 导出向导自动化发布签名过程”。

标签: android eclipse samsung-mobile


【解决方案1】:

首先,由于它在抱怨 .apk 文件,请尝试通过将扩展名重命名为 .zip 来打开 .apk 文件。如果您可以重命名文件,并在 Windows 资源管理器中正常打开它,则表明文件本身没有损坏。

其次,我会尝试通过 USB 连接您的设备并使用命令 adb -d install "path-to-your-apk-file.apk" 进行安装。如果这不起作用,希望 adb 会吐出更具描述性的内容,您可以使用错误更新您的问题。

【讨论】:

  • 非常感谢您的回复。我注意到 apk 文件只是 zip 文件,我能够成功打开和查看未签名和已签名的输出。我无法尝试第二个选项,因为 USB 驱动程序由于某种原因无法在我的系统上正确安装(Windows 7 Ultimate x64)。我尝试安装 Samsung Kies 和 Google USB 驱动程序,但它们似乎都不起作用。即使我的真实设备连接到计算机,“adb devices”也只会返回 ADV。可以尝试在我的 Debian 操作系统上设置这些工具。
  • 所以你说,你的 USB 驱动程序不工作,仍然希望它能够正确地将 .apk 传输到你的设备?
  • 嗯。找到合适的 adb 驱动程序总是一场噩梦):为什么不尝试使用三星 S2 的本教程naturalprogression.wordpress.com/2011/07/19/… 此外,如果您要进行大量开发,您将希望在真实设备上进行开发。在真实设备上上传、安装和应用性能要好得多。
  • @HeikoRupp adb 驱动程序与用于传输文件的驱动程序不同。文件传输模式只是将 Android 视为大容量存储设备。
  • 尝试了您发布的网站上提到的所有步骤,但仍然不起作用。
【解决方案2】:

我在自定义 apk 文件 here 上找到了解析错误的答案。删除 AndroidManifest.xml 中所需的 API 级别标记 android:minSdkVersion 解决了问题。

【讨论】:

    猜你喜欢
    • 2013-12-09
    • 1970-01-01
    • 1970-01-01
    • 2015-06-23
    • 2012-06-23
    • 1970-01-01
    • 2017-04-23
    • 2017-03-26
    • 1970-01-01
    相关资源
    最近更新 更多