2017-03-05 24 views
8
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkHttpClient 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Cache 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkHttpClient 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.CacheControl 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.CacheControl$Builder 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Request$Builder 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkHttpClient 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Call 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Response 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.ResponseBody 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Response 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.ResponseBody 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkHttpClient 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Cache 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.CacheControl 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.CacheControl$Builder 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Request$Builder 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Response 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Cache 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.CacheControl 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Request 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Call 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Response 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.ResponseBody 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.OkHttpClient 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.CacheControl$Builder 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.CacheControl 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Request$Builder 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Response 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.ResponseBody 
Warning:com.squareup.picasso.OkHttpDownloader: can't find referenced class com.squareup.okhttp.Cache 
Warning:there were 52 unresolved references to classes or interfaces. 
Warning:Exception while processing task java.io.IOException: Please correct the above warnings first. 
Error:Execution failed for task ':app:transformClassesAndResourcesWithProguardForRelease'. 
Job failed, see logs for details 

这是我试图建立我的release.apk时得到的错误。应用程序崩溃与毕加索和minifyEnabled真

我试图通过增加来解决它:

-dontwarn com.squareup.picasso.** 

在我pro guard-rules.pro文件。

release.apk现在可以正确构建,至少显然它可以。

但是当我在手机(或任何手机)上安装应用程序时,它在启动时崩溃,我认为它开始加载与毕加索的图像。

请帮我解决这个问题。

我已经尝试了一些在互联网上找到的解决方案,并从您的建议,他们似乎都正确构建,但应用程序仍然不断崩溃。除了职业守则之外,还能依赖其他的东西吗?

这是我的gradle这个看起来像:

buildTypes { 
    release { 
     shrinkResources true 
     minifyEnabled true 
     proguardFile 'proguard-rules.pro' 
     proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' 
    } 
+0

https://github.com/krschultz/android-proguard-snippets/blob/master/libraries/proguard-square-picasso.pro –

+0

@ cricket_007谢谢你,我想这一个了,没有运气之一: ( – Daniele

+0

这应该至少修复毕加索,而不是任何其他库 –

回答

20

你似乎涅槃OkHTTP仍然

can't find referenced class com.squareup.okhttp

前往Picasso's Github page

-dontwarn com.squareup.okhttp.** 
+0

谢谢你的回答。我也试图使用这个,没有任何运气。它确实修复它,因为apk是正常生成的。尽管如此,当我安装应用程序时,一旦它必须使用毕加索加载图像,它就会崩溃 – Daniele

+0

您可以过滤logcat而不是警告吗? –

+0

当然,给我一分钟 – Daniele

4

尝试这些您proguard.cfg:

#### -- Picasso -- 
-dontwarn com.squareup.picasso.** 

#### -- OkHttp -- 

-dontwarn com.squareup.okhttp.internal.** 

#### -- Apache Commons -- 

-dontwarn org.apache.commons.logging.** 
+0

谢谢你的答案,我会试试这个 – Daniele

+0

我认为你想'不要'dontwarn' –

+1

没什么,它建立正确,但在发射时不断崩溃 – Daniele