使用Swarm Leaderboard for Android与LibGDX。 Eclipse调试版工作,导出apk版本无法正常工作

时间:2015-01-14 00:30:06

标签: android libgdx proguard swarm

如果你在这里,那么就像我一样,你已经浏览了整个互联网,寻找最新版本的Swarm SDK导致导出和安装的APK崩溃的原因,但是在通过Eclipse进行调试时能够完美运行。

来自Google Crash / ANR报告的错误消息:

android.content.ActivityNotFoundException: Unable to find explicit activity class
{com.robertmackness.jumprx.android/com.swarmconnect.de}; 
have you declared this activity in your AndroidManifest.xml?

经过太多时间谷歌搜索和阅读官方文档后,我尝试了以下修复:

  1. 明确定义Android清单中的活动。

  2. 如上所述,但确保manifestmerger.enabled = false。

  3. 在我的android清单中删除了活动的定义,设置了manifestmerger.enabled = true并确保此行是第二行(启用后卫后)

  4. 确保项目正确导入库并确保'属性 - > Java构建路径 - >订单和出口 - >已检查SwarmConnect.jar。

  5. 同样,所有上述解决方案都使调试应用程序保持正常运行,但导出的apk以各种方式破坏。

    提交以下解决方案。

1 个答案:

答案 0 :(得分:0)

所以我已经配置了proguard,并且没有指定要保留在proguard-project.txt中的任何类名。我很久以前就已经把它设置好了,我已经忘记了所有这些......

我觉得有点傻,因为这就是为什么我的Admob整合起初不起作用的原因。

将它放入proguard-project.txt以使其运行:

-keep class com.swarmconnect.**{*;}

-keepattributes Signature

-keepclassmembers class * implements java.io.Serializable {
static final long serialVersionUID;
private static final java.io.ObjectStreamField[] serialPersistentFields;
private void writeObject(java.io.ObjectOutputStream);
private void readObject(java.io.ObjectInputStream);
java.lang.Object writeReplace();
java.lang.Object readResolve();
}