为啥我的签名 apk 崩溃了?
Posted
技术标签:
【中文标题】为啥我的签名 apk 崩溃了?【英文标题】:Why my signed apk crashes?为什么我的签名 apk 崩溃了? 【发布时间】:2013-01-17 16:13:51 【问题描述】:我已经使用我创建的标志签署了一个应用程序。我已经在我的手机中安装了这个 apk,这没问题,但是当我试图打开应用程序时崩溃(不显示任何活动),并且它没有给我看日志的可能性(这个对话框没有报告按钮)
问题是我签署了应用程序的标志。我已经用其他标志测试过,应用程序可以完美打开。我不能发布任何关于标志创建的信息,但我只能说我已经使用过:
别名中的字母和_字符
密码中的字母、数字和-字符
50 年
和名字中的字母
其他字段为空白。
主要问题是该应用程序已在 google play 中发布,所以我如何发布新签名的 apk 而无需取消发布此应用程序并创建新应用程序?
【问题讨论】:
我之前也遇到过同样的问题,不知道为什么,但是当我签署我的 apk 时,应用程序在打开时崩溃了。在签署apk之前,我正在清理项目并在之后签署。这解决了我的问题。 感谢您的回答,但昨天我很生气地解决了这个问题,我做了很多次。 其实你需要在你的设备连接的时候能够看到你崩溃的日志,但是它们不会被排序。试试看你能不能抓到它们。 我什么都看不到。但是,你的第一个答案是有道理的。我已经清理了项目,然后我导出了 apk 并走了。但是我又试了一次,应用程序崩溃了。因此,解决方案是清理项目并将其导出。我已将项目发送给朋友,他使用此标志签署应用程序没有任何问题。 您的应用中是否有任何库? 【参考方案1】:你可以在google play的开发者账号中看到这个发布的APK以及它的版本代码和版本名称等详细信息
只有一个按钮“上传新的APK”
点击“上传新的 APK”按钮 上传新的标志 APK 并修复错误 停用当前 APK 有效的新 apk注意:不要更改新 APK 的包名
【讨论】:
【参考方案2】:清理项目解决了我的问题。
【讨论】:
清除 gen 文件夹也可能是一项要求,因为清除不会重写所有信息(当某些信息可能已损坏时)。通过清除可能想要完全删除/删除 gen 文件夹,然后进行新的干净构建。 它对我有用。非常小的东西“只是清洁项目”。谢谢。【参考方案3】:从项目中删除“gen”文件夹,然后清理项目
【讨论】:
这绝对是我的情况的正确解决方案。我还创建了一个新的 keystore.keystore 文件,其中包含更新的详细信息。然后我删除了 GEN 文件夹并清理了项目(在项目特定文件夹中)。完成此操作后,我使用新的密钥库文件导出了已签名的应用程序,它运行良好。感谢您对此问题的提示。【参考方案4】:另一个可能的原因(对我来说就是这种情况)是在构建您的签名 APK 时使用了错误的 JDK/JRE 版本。
如果您使用的是 Eclipse,请检查 Window -> Preferences -> Java -> Installed JREs 并查看哪个被选中为默认值。 android 尚不兼容 Java 8。
【讨论】:
【参考方案5】:对于在react-native
环境中获得此功能的任何人,请记住在生成签名的 APK 之前bundle your js。
如果您使用的是 Android Studios GUI 之类的东西,很容易忘记 ?
【讨论】:
【参考方案6】:我今天遇到了同样的问题,对我来说,原因是:
我在我的 Java 代码中使用了 void blaMethod()
,我尝试通过 XML 按钮的 onClick
方法调用该代码。我必须知道这些方法必须是 public void
... - 我通常会这样做,但这次我有点草率。
奇怪的是:我的未签名 APK 在我的所有设备上都运行良好,但签名的 APK 在使用这些方法时崩溃了(在父上下文或祖先上下文中找不到方法(视图) )。不明白这是为什么... 愿这对某人有所帮助!
问候
【讨论】:
【参考方案7】:就我而言,我必须将build.gradle
中的minifyEnabled
更改为false
buildTypes
release
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
【讨论】:
这会让你的 APK 比正常的大。 这对我有用!!!!但是更好的解决方案是什么【参考方案8】:如果您正在测试,您可以简单地创建一个新的密钥库 或者只是在我的情况下重新输入密码
【讨论】:
以上是关于为啥我的签名 apk 崩溃了?的主要内容,如果未能解决你的问题,请参考以下文章
使用 Google Maps API v2 时,签名的 APK 崩溃,未签名的 APK
单击登录按钮后,React 本机发布签名的 apk 文件崩溃