Вылетает приложение при использовании Bitmap
При использовании данной функции приложение вылетает с ошибкой IndexOutOfBoundsException:
public void OnSnapShotRendered(int i, byte[] bArr, int i2, int i3) {
for (int i4 = 0; i4 < this.mList.size(); i4++) {
SnapShotItem snapShotItem = this.mList.get(i4);
if (snapShotItem.internalID == i) {
Bitmap createBitmap = Bitmap.createBitmap(i2, i3, Bitmap.Config.ARGB_8888);
createBitmap.setHasAlpha(true);
IntBuffer asIntBuffer =
ByteBuffer.wrap(bArr).order(ByteOrder.BIG_ENDIAN).asIntBuffer();
int[] iArr = new int[asIntBuffer.remaining()];
asIntBuffer.get(iArr);
createBitmap.setPixels(iArr, 0, i2, 0, 0, i2, i3); // тут ошибка
snapShotItem.listener.OnRenderComplete(createBitmap);
this.mList.remove(i4);
return;
}
}
}
сам лог:
W/System.err: java.lang.ArrayIndexOutOfBoundsException W/System.err: at android.graphics.Bitmap.checkPixelsAccess(Bitmap.java:2087) W/System.err: at android.graphics.Bitmap.setPixels(Bitmap.java:2146) W/System.err: at .util.SnapShotHelper.OnSnapShotRendered(SnapShotHelper.java:41)
Как можно решить данную проблему?