2017-11-01 14 views
0

アプリはこのメソッドでクラッシュしていますが、クラッシュログは表示されません。これは、HTC Desire Pro 10とGalaxy s6エッジで完全に動作するような少数のデバイス(HTC one m9)の場合にのみ起こります。アプリケーションがscript.forEach(出力)でクラッシュする。この行アプリぼかし画像にクラッシュする

private static Bitmap blur(Bitmap src) { 
    RenderScript rs = RenderScript.create(BaseApplication.getAppContext()); 
    final Allocation input = Allocation.createFromBitmap(rs, src); //use this constructor for best performance, because it uses USAGE_SHARED mode which reuses memory 
    final Allocation output = Allocation.createTyped(rs, input.getType()); 
    final ScriptIntrinsicBlur script = ScriptIntrinsicBlur.create(rs, Element.U8_4(rs)); 
    script.setRadius(5f); 
    script.setInput(input); 
    script.forEach(output); 
    output.copyTo(src); 
    return src; 
    } 
+0

logcatが表示されません。同様の場合https://stackoverflow.com/questions/18709301/android-renderscript-allocation-usage-shared-crash?rq=1 –

+0

11-01 19:26:33.587 20689-21107/com.ingic.aaloo A/libc:致命的なシグナル7(SIGBUS)、コード2、tid 21107のcom.ingic.aaloo A /シグナル7(SIGBUS)、コード2、tid 21114のフォールトaddr 0xbeb0d000 11-01 19:26:33.588 20689-21111/com.ingic.aaloo A/libc:致命的なシグナル7(SIGBUS )、コード2、tid 21111のフォールトaddr 0xbeb0d000(com.ingic.aaloo) –

答えて

0

私は、この問題は私のビットマップ構成がBitmap.Config.ARGB_8888なかったので、我々はぼかしを適用する前にARGB_8888に変換する必要があり起こっていたこの問題を解決しました。

Bitmap U8_4Bitmap; 
    if (yourBitmap.getConfig() == Bitmap.Config.ARGB_8888) { 
     U8_4Bitmap = yourBitmap; 
    } else { 
     U8_4Bitmap = yourBitmap.copy(Bitmap.Config.ARGB_8888, true); 
    } 
関連する問題