【问题标题】:App crashes on mobile device after using ProGuard使用 ProGuard 后应用程序在移动设备上崩溃
【发布时间】:2013-05-09 09:33:02
【问题描述】:

在我的应用程序上成功使用 ProGuard 后,它在我的移动设备上启动时崩溃。 我使用proguard的标准配置:${sdk.dir}/tools/proguard/proguard-android.txt

而 logcat 是这样说的:E/AndroidRuntime(13441): at packagename.q.doInBackground(Unknown Source)

然后一些应用程序崩溃错误等。

为什么在 doInBackground 中找不到我的 Source?它是一个简单的 AsyncTask。 谁能帮帮我?

编辑:整个日志:

I/ActivityManager( 1604): Start proc myPackageName for activity myPackageName/.MainActivity: pid=13961 uid=10147 gids={3003} I/ActivityManager( 1604): Displayed myPackageName/.MainActivity: +744ms (total +1m41s749ms) E/AndroidRuntime(13961): at myPackageName.q.doInBackground(Unknown Source) E/EmbeddedLogger( 1604): App crashed! Process: myPackageName E/EmbeddedLogger( 1604): App crashed! Package: myPackageName v4 (1.2.1) E/EmbeddedLogger( 1604): Application Label: XxX W/ActivityManager( 1604): Force finishing activity myPackageName/.MainActivity E/WindowManager(13961): Activity myPackageName.MainActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@40dcbed8 that was originally added here E/WindowManager(13961): android.view.WindowLeaked: Activity myPackageName.MainActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@40dcbed8 that was originally added here E/WindowManager(13961): at myPackageName.MainActivity.b(Unknown Source) E/WindowManager(13961): at myPackageName.l.a(Unknown Source) I/ActivityManager( 1604): Process myPackageName (pid 13961) has died.

【问题讨论】:

  • 这是因为 Proguard 的配置错误。 pagename 是非组件类吗?如果是,请使用 keep 进行此类。放完整的日志消息
  • 哦,对不起,这应该是包名,它显示了我的包名^^ Mhm如何提供从手机到这里的整个日志:o
  • :) q 是一个 Activity 类?如果是,请修改您的设置
  • 嗯,我的 Activity 类被命名为:MainActivity 和 Login :o 但是 doInBackground 在另一个类中,这改变了 MainActivity 上的一些东西,这是错误吗?我认为q是因为PG的缩小等,我应该修改什么?我对配置 ProGuard 了解不多:/
  • 这就是我问的原因。如果那是 Proguard 未更改的活动名称。使用-keep class pkg.classname { *; }

标签: java android obfuscation proguard


【解决方案1】:

我解决了。问题是我在这个doInBackground 中使用了jsoup 刚刚添加了

#Keep jsoup -keep public class org.jsoup.** { public *; }

到配置,它运行良好,感谢您的所有帮助

【讨论】:

  • 谢谢,我的应用也出现了同样的问题。
猜你喜欢
  • 2020-07-15
  • 2014-03-09
  • 2011-04-08
  • 1970-01-01
  • 1970-01-01
  • 2016-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多