草庐IT

proguarded

全部标签

android - Proguard 导致 Android 导航组件出现运行时异常

在将NavigationComponent(android.arch.navigation:navigation-fragment-ktx:1.0.0-alpha01)集成到我的带有目标的项目中并编译sdk后,我在使用混淆器时遇到了这个崩溃共27个2018-05-1612:13:14.04424573-24573/com.mypackage.myapp.xE/AndroidRuntime:FATALEXCEPTION:mainProcess:com.mypackage.myapp.x,PID:24573java.lang.RuntimeException:Unabletostartac

android - 为什么 ProGuard 保留 onCreate() 方法?

我正在努力解决这个问题,但我根本不明白为什么会这样:根据默认的proguard.cfg文件,我定义了以下规则:-keeppublicclass*extendsandroid.app.Activity据我了解,这意味着:保留任何Activity类作为入口点,但可以随意缩小/混淆/优化其中的任何内容(否则我将不得不使用例如通配符来保留方法,对吧?)。现在我的测试Activity看起来像这样:publicclassMyActivityextendsActivity{publicvoidonCreate(BundlesavedInstanceState){...}publicvoidunuse

android - 使用 Proguard 删除 Google Play 服务库中未使用的类

我正在尝试从GooglePlayServices库中删除未使用的类。我已经创建了具有单个空Activity的全新android项目。该项目不使用GooglePlayServices库中的任何内容。所以我希望,当我构建版本时(包括在我的配置中运行proguard),与使用/不使用play-services依赖项的构建相比,我将看到二进制大小没有差异。但实际上,我发现apk大小有~700KB的差异。我找到了relativelycomplexsolution,usinggradlescript,其中涉及重新打包play-services.jar文件。此外,此解决方案需要明确指定每个不会使用的

android - 使用 Proguard 时来源不明

如果我使用Proguard(minifyEnabledtrue和shr​​inkResourcestrue),我的崩溃报告会有点用处这是Proguard的报告:java.lang.NullPointerException:Attempttoinvokevirtualmethod'voidandroid.widget.ProgressBar.setVisibility(int)'onanullobjectreferenceatxx.xxxx.xxx.xxxxx.xxxxxx.restoreViewAfterLoading(UnknownSource)atxx.xxxx.xxx.xxxxx

android - 为版本 : Proguard config 生成签名的 apk 时出错

我目前正尝试在AndroidStudio中为应用程序生成发布版本。我试图在生成发布版本时消除所有问题,但我遇到了一些问题。Warning:com.viewpagerindicator.LinePageIndicator:can'tfindreferencedmethod'floatceil(float)'inlibraryclassandroid.util.FloatMathWarning:org.androidannotations.api.rest.RestClientHeaders:can'tfindreferencedclassorg.springframework.http.

android - android studio中的proguard问题

我在androidstudio中开发了一个应用程序。它在调试版本中运行良好,但当我尝试使用混淆器创建发布版本时,会出现数百条警告,我无法使用-keep选项摆脱它们。我的build.gradle是applyplugin:'com.android.application'applyplugin:'maven'applyplugin:'com.google.gms.google-services'android{compileSdkVersion23buildToolsVersion"23.0.2"defaultConfig{applicationId"com.ruben.xradar"mi

android - Proguard 破坏了 Android WebView,为什么?

我的Activity中有一个WebView,使用Proguard进行混淆似乎破坏了我的WebView,我不明白为什么。代码非常简单,我的res/raw目录中有HTML文件,下面是调试时加载它的代码。WebViewmv=(WebView)findViewById(R.id.webView1);mv.loadUrl("file:///android_res/raw/wesite.html");一旦我创建了要发布的apk,通过proguard运行它就不起作用,我只得到无法加载页面。我还没有在混淆配置文件中添加任何东西。 最佳答案 Prog

android - 使用 ProGuard 缩小代码后,我可以在 APK 分析器中的何处找到我的 BuildConfig?

请在AndroidStudio上查看以下两张来自AnalyzeAPK的图片。第一个是minifyEnabled=false,和另一个是minifyEnabled=true(当然是在用mapping.txt解码之后)minifyEnabled=false。BuildConfig在那里。minifyEnabled=true(使用mapping.txt解码)。BuildConfig不存在。我可以在缩小之前在classes.dex中找到BuildConfig,但在缩小之后就找不到了。我找不到任何关于此的文档/讨论,但是在使用ProGuard缩小后,是否有一些规则可以从classes.dex中删

java - Android proguard 混淆代码导致 NullPointerException,而实际上不应该

我已经在AndroidMarketplace上分发了一个应用程序。我收到了一小部分用户(可能是2%)返回的错误报告,他们收到了不符合逻辑的NullPointerExceptions。我从来没有能够自己复制这个。该代码相对简单,是每个用户都必须遵循的通用代码路径。实际上,我已经获取了可能创建NPE的每一行单独的代码并将其包装在一个try-catchblock中并抛出自定义运行时异常,但我仍然遇到未捕获的NullPointerException错误。在这一点上,我唯一能想到的就是与我的Proguard混淆有关的事情。我看过其他一些文章,谈到如果您注意到奇怪的行为,请删除-overloada

android - Proguard 不保留堆栈跟踪中的行号和方法名称

这里是proguard-rules.pro的几行-keepattributes*Annotation*-keepattributesSignature-keepattributesInnerClasses,EnclosingMethod-renamesourcefileattributeSourceFile-keepattributesSourceFile,LineNumberTable-keeppublicclass*extendsjava.lang.Exception-dontwarnorg.apache.http.**Logcat输出(错误行号列为1133,而我的源文件长了100