出口签署应用程序时使用android.support.v4.app蜂窝兼容包Proguard的错误 [英] Proguard error when exporting signed app using android.support.v4.app honeycomb compatibility package

查看:339
本文介绍了出口签署应用程序时使用android.support.v4.app蜂窝兼容包Proguard的错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在我的项目中使用V4兼容包,但是当我尝试导出一个签名的应用程序,我从Proguard的以下信息。我GOOGLE了整个晚上,但我没有找到答案,以解决这个问题。

  [2011-07-03 1时46分29秒 -  worldscopeApp] Proguard的返回错误code 1.见控制台
[2011-07-03 1点46分29秒 -  worldscopeApp]警告:android.support.v4.app.ActivityCompatHoneycomb:找不到引用的方法'无效invalidateOptionsMenu()'类android.app.Activity
[2011-07-03 1点46分29秒 -  worldscopeApp]警告:android.support.v4.app.ActivityCompatHoneycomb:找不到引用的方法'无效转储(java.lang.String中,java.io.FileDescriptor中,JAVA。 io.PrintWriter,类android.app.Activity java.lang.String中[])
[2011-07-03 1点46分29秒 -  worldscopeApp]警告:android.support.v4.view.MenuCompatHoneycomb:找不到引用的方法'无效setShowAsAction(INT)'类android.view.MenuItem
[2011-07-03 1点46分29秒 -  worldscopeApp]您应该检查是否需要指定其他程序罐子。
[2011-07-03 1点46分29秒 -  worldscopeApp]警告:有3个未解决的引用类成员计划。
[2011-07-03 1点46分29秒 -  worldscopeApp]您输入的类似乎是不一致的。
[2011-07-03 1点46分29秒 -  worldscopeApp]你可能需要重新编译它们,然后再试一次。
[2011-07-03 1点46分29秒 -  worldscopeApp或者,你可能需要指定的选项
[2011-07-03 1点46分29秒 -  worldscopeApp]'-dontskipnonpubliclibraryclasses'和/或
[2011-07-03 1点46分29秒 -  worldscopeApp]-dontskipnonpubliclibraryclassmembers。
[2011-07-03 1点46分29秒 -  worldscopeApp] java.io.IOException异常:请首先纠正上述警告。
[2011-07-03 1点46分29秒 -  worldscopeApp]在proguard.Initializer.execute(Initializer.java:308)
[2011-07-03 1点46分29秒 -  worldscopeApp]在proguard.ProGuard.initialize(ProGuard.java:210)
[2011-07-03 1点46分29秒 -  worldscopeApp]在proguard.ProGuard.execute(ProGuard.java:85)
[2011-07-03 1点46分29秒 -  worldscopeApp]在proguard.ProGuard.main(ProGuard.java:499)
 

解决方案

这是我用我的proguard.cfg什么:

  -dontwarn ** CompatHoneycomb
-keep公共类*扩展android.support.v4.app.Fragment
 

更普遍的是:

  -dontwarn ** CompatHoneycomb
-keep类android.support.v4 ** {*。 }
 

但它会引起较大的APK大小,因此只使用,如果第一个是行不通的。

I am using v4 compatibility package in my project, but when I try to export a signed app, I get the following message from Proguard. I've Googled the whole evening, but I didn't find the answer to solve this.

[2011-07-03 01:46:29 - worldscopeApp] Proguard returned with error code 1. See console
[2011-07-03 01:46:29 - worldscopeApp] Warning: android.support.v4.app.ActivityCompatHoneycomb: can't find referenced method 'void invalidateOptionsMenu()' in class android.app.Activity
[2011-07-03 01:46:29 - worldscopeApp] Warning: android.support.v4.app.ActivityCompatHoneycomb: can't find referenced method 'void dump(java.lang.String,java.io.FileDescriptor,java.io.PrintWriter,java.lang.String[])' in class android.app.Activity
[2011-07-03 01:46:29 - worldscopeApp] Warning: android.support.v4.view.MenuCompatHoneycomb: can't find referenced method 'void setShowAsAction(int)' in class android.view.MenuItem
[2011-07-03 01:46:29 - worldscopeApp]       You should check if you need to specify additional program jars.
[2011-07-03 01:46:29 - worldscopeApp] Warning: there were 3 unresolved references to program class members.
[2011-07-03 01:46:29 - worldscopeApp]          Your input classes appear to be inconsistent.
[2011-07-03 01:46:29 - worldscopeApp]          You may need to recompile them and try again.
[2011-07-03 01:46:29 - worldscopeApp]          Alternatively, you may have to specify the options 
[2011-07-03 01:46:29 - worldscopeApp]          '-dontskipnonpubliclibraryclasses' and/or
[2011-07-03 01:46:29 - worldscopeApp]          '-dontskipnonpubliclibraryclassmembers'.
[2011-07-03 01:46:29 - worldscopeApp] java.io.IOException: Please correct the above warnings first.
[2011-07-03 01:46:29 - worldscopeApp]   at proguard.Initializer.execute(Initializer.java:308)
[2011-07-03 01:46:29 - worldscopeApp]   at proguard.ProGuard.initialize(ProGuard.java:210)
[2011-07-03 01:46:29 - worldscopeApp]   at proguard.ProGuard.execute(ProGuard.java:85)
[2011-07-03 01:46:29 - worldscopeApp]   at proguard.ProGuard.main(ProGuard.java:499)

解决方案

This is what I'm using in my proguard.cfg:

-dontwarn **CompatHoneycomb
-keep public class * extends android.support.v4.app.Fragment

More general is:

-dontwarn **CompatHoneycomb
-keep class android.support.v4.** { *; }

But it'll cause a larger APK size so only use if the first one isn't working.

这篇关于出口签署应用程序时使用android.support.v4.app蜂窝兼容包Proguard的错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆