Je voulais utiliser RenderScript de la bibliothèque SupportLibrary pour créer un effet de flou.Android, RenderScript de SupportLibrary et java.lang.NoClassDefFoundError
Pour cela, j'ai trouvé la solution d'ici https://stackoverflow.com/a/14988991/408780
final RenderScript rs;
rs = RenderScript.create(myAndroidContext);
final Allocation input = Allocation.createFromBitmap(rs, photo, Allocation.MipmapControl.MIPMAP_NONE, Allocation.USAGE_SCRIPT);
final Allocation output = Allocation.createTyped(rs, input.getType());
final ScriptIntrinsicBlur script = ScriptIntrinsicBlur.create(rs, Element.U8_4(rs));
script.setRadius(myBlurRadius /* e.g. 3.f */);
script.setInput(input);
script.forEach(output);
output.copyTo(photo);
Le problème est que rs = RenderScript.create (myAndroidContext) provoque java.lang.NoClassDefFoundError et je ne sais pas, ce qui est aller mal.
Selon https://developer.android.com/reference/android/support/v8/renderscript/ScriptIntrinsicBlur.html ScriptIntrinsicBlur a été ajouté dans la version 23.
Je viens d'ajouter à l'application gradle lignes suivantes:
android {
...
defaultConfig {
...
renderscriptTargetApi 23
renderscriptSupportModeEnabled true
}
...
}
J'ai aussi essayé avec renderscriptTargetApi 21 comme décrit ci-dessous https://github.com/react-native-community/react-native-blur/issues/110#issuecomment-272956182
Mais toujours pas de succès. Aucune suggestion?
Peut-être quelques infos supplémentaires:
minSdk = 14, targetSdk = 19, compileSdk = 25
Merci à l'avance.
Désolé pour la réponse tardive. Mais ... toujours pareil, build-tools version 25.0.2, gradle-plugin version 2.1.2 – Tima