草庐IT

proguard-project-mfp

全部标签

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

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

android - 错误 :The project is using an unsupported version of the Android Gradle plug-in (0. 12.2)

更新AndroidStudio后我无法运行我的应用程序-我收到此异常:Error:TheprojectisusinganunsupportedversionoftheAndroidGradleplug-in(0.12.2).Therecommendedversionis1.0.0-rc4.这是我的buld.gradle依赖项dependencies{classpath'com.android.tools.build:gradle:0.12.+'classpath'com.crashlytics.tools.gradle:crashlytics-gradle:1.+'}更新我在build

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 - Gradle dependencies compile, apk project, compile project,provided,implementation project的区别

Gradle依赖之间的区别。compileapkprojectcompileprojectprovidedprojectimplementation我的问题是这里的compile,apkproject,compileproject,providedproject有什么区别? 最佳答案 这里有两件不同的事情要讨论:依赖配置和依赖源。依赖配置配置有助于定义依赖项的传递性,这反过来又消除了必须发现和指定您自己的项目/库所需的库的痛苦,自动包括它们。gradle中的这种配置概念与Maven'sscopes中的非常相似。:compile:编译

android - Build.gradle:对 'project' 的访问超出了其访问权限

constants.gradleproject.ext{minSdkVersion=19compileSdkVersion=28targetSdkVersion=28buildToolsVersion='28.0.3'supportLibraryVersion='28.0.0'}应用的build.gradleapplyplugin:'com.android.application'applyfrom:'../constants.gradle'android{compileSdkVersionproject.ext.compileSdkVersionbuildToolsVersionpr

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中删