Android Unsigned App 无法安装在设备上
Posted
技术标签:
【中文标题】Android Unsigned App 无法安装在设备上【英文标题】:Android Unsigned App not able to install on device 【发布时间】:2012-02-22 19:52:03 【问题描述】:我的应用能够在模拟器上运行,我将其导出为未签名应用。
在我手机的设置-->>应用程序-->>检查未知来源。
我通过 USB 将 .apk 下载到手机存储中。
然后在文件管理器下,我发现存储的 .apk 并点击安装按钮并尝试安装,
但最后它说应用程序未安装。但为什么?怎么了?
我也尝试了 ./adb install -r myapp.apk 但它说错误:找不到设备
【问题讨论】:
没有一个解决方案适用于我的华为 P8 Lite。在其他手机上工作没有问题。你的也是华为吗? 【参考方案1】:我从未使用您的方法在设备上测试过应用程序...当我不使用 USB 在我的设备上调试时并且我只想将它安装在我的手机上,我会这样做以下:
如果你已经在模拟器上运行过它,那么你的项目的 bin 目录中有一个 .apk 文件。
通过 USB 或其他方法(我使用保管箱)将该 .apk 移动到您的手机。
打开 .apk 并安装到您的手机上。
前面的答案都是正确的,必须签名。但是通过我的方法,它将使用您的调试密钥进行签名。
您显然希望在将其发布到市场之前使用真正的密钥对其进行实际签名。
【讨论】:
【参考方案2】:所有应用程序都必须签名才能安装在模拟器或真机上,请查看官方开发指南signing your application:
所有申请都必须签名。系统不会安装 模拟器或设备上的应用程序(如果未签名)。 为了测试和调试您的应用程序,构建工具使用由 android 创建的特殊调试密钥对您的应用程序进行签名 SDK 构建工具。
【讨论】:
【参考方案3】:具体来说,您是如何将 APK 下载到设备上的?试试dab install <path to APK>
。此外,您可以从 Android 浏览器安装 APK,方法是将其上传到任何网络服务器并导航到其 URL。
您必须在安装前导出并使用调试证书签名。阅读publishing。
【讨论】:
【参考方案4】:如果您使用的是Eclipse
,则无需将您的应用导出为“未签名的 apk”。只需在手机上启用“允许未知来源”,然后右键单击项目并点击“运行方式”。
未签名的 apk 是通过使用存储在 Android SDK 中的 debug.keystore
密钥对其进行签名来生成的。他的密钥可能已损坏。要进行验证,请检查是否有任何其他项目也出现类似问题。要解决密钥损坏问题,请删除您的 SDK 并重新安装(不应超过 15 分钟)。
如果其他项目工作正常,这意味着您的debug.keystore
key 没有损坏,您需要在手机上卸载此应用程序的任何早期版本并重新启动手机。
adb server
也有可能被搞砸了。在这种情况下,请重新启动您的 Eclipse
或从命令行执行 adb kill-server
。
另外,似乎其他人也遇到过类似的问题。您是否搜索过类似的***
问题并尝试了解决方案?这是一个:'App not Installed' Error on Android
【讨论】:
【参考方案5】:未签名的 APK 可以安装在真实的移动设备上进行测试。
只需在图片上执行以下步骤:
找到 APK 并通过 gmail 等将其发送到您的手机。
【讨论】:
以上是关于Android Unsigned App 无法安装在设备上的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio 签名app-release-unsigned.apk is not signed
无法打开 'android-release-unsigned.apk' 作为 zip 存档(zipalign 错误)
尽管设置为 targetSDK 31,但 Flutter App 无法从 Google 商店为 Android 12 安装