android picasso 监听,在使用Picasso进行转换时,Android应用程序会崩溃

我已经构建了一个应用程序,其中一些用户(管理员)可以登录我的网页上的管理员帐户并更改一些内容,例如应用程序中的背景图像.作为后端,我正在使用Parse.com,应用程序从那里加载其背景图像.我正在使用Picasso在应用程序中加载背景图像.在某些活动中,我希望背景模糊,所以我使用

this模糊转换并使用以下代码加载图像:

int apiVersion = android.os.Build.VERSION.SDK_INT;

if(apiVersion >= android.os.Build.VERSION_CODES.JELLY_BEAN_MR1) {

// Blur the image

final BlurTransformation blurTransformation = new BlurTransformation(this, 20);

// Load the background image with blur

Picasso.with(this)

.load(backgroundPictureURL)

.transform(blurTransformation)

.into(backgroundView);

} else {

// Load the background image without blur

Picasso.with(this)

.load(backgroundPictureURL)

.into(backgroundView);

}

我已经使用Parse启用了崩溃报告,现在我正在获取有关应用程序在尝试应用模糊转换时崩溃的报告.这是我收到的堆栈跟踪:

java.lang.RuntimeException: Transformation blurred crashed with exception.

com.squareup.picasso.BitmapHunter$3.run BitmapHunter.java:434

android.os.Handler.handleCallback Handler.java:739

android.os.Handler.dispatchMessage Handler.java:95

android.os.Looper.loop Looper.java:135

android.app.ActivityThread.main ActivityThread.java:5254

java.lang.reflect.Method.invoke Native Method

java.lang.reflect.Method.invoke Method.java:372

com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run ZygoteInit.java:898

com.android.internal.os.ZygoteInit.main ZygoteInit.java:693

Caused by: android.renderscript.RSIllegalArgumentException: Bitmap has an unsupported format for this operation

android.renderscript.Allocation.validateBitmapFormat Allocation.java:537

android.renderscript.Allocation.copyTo Allocation.java:1257

se.myapplication.main.CustomUI.BlurTransformation.transform BlurTransformation.java:60

com.squareup.picasso.BitmapHunter.applyCustomTransformations BitmapHunter.java:429

com.squareup.picasso.BitmapHunter.hunt BitmapHunter.java:238

com.squareup.picasso.BitmapHunter.run BitmapHunter.java:159

java.util.concurrent.Executors$RunnableAdapter.call Executors.java:422

java.util.concurrent.FutureTask.run FutureTask.java:237

java.util.concurrent.ThreadPoolExecutor.runWorker ThreadPoolExecutor.java:1112

java.util.concurrent.ThreadPoolExecutor$Worker.run ThreadPoolExecutor.java:587

java.lang.Thread.run Thread.java:818

com.squareup.picasso.Utils$PicassoThread.run Utils.java:411

堆栈跟踪引用的Blur Transformation类中的代码行是这一行:

output.copyTo(blurredBitmap);

图像格式是jpg或png,当我在手机和模拟器上尝试时,没有问题,所以一些用户似乎只发生了崩溃,他们似乎有Android 5.0.1和5.0.2 (就像我一样,对我来说没有问题).

我无处可去,所以任何帮助都表示赞赏!可能导致问题的原因是什么?如何解决?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值