Ошибка при попытке размыть изображение с помощью библиотеки поддержки RenderScript на телефоне Android.Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка при попытке размыть изображение с помощью библиотеки поддержки RenderScript на телефоне Android.

Сообщение Anonymous »

Я пытаюсь размыть свое изображение и отобразить его размытым на фоне RelativeLayout с помощью RenderScript, приложение работает в эмуляторе, но мое приложение на телефоне продолжает аварийно завершать работу с этой ошибкой:

08-05 22:21:36.543: E/RenderScript_jni(11549): нет методов GC
08-05 22:21:36.553: D/dalvikvm(11549 ): JNI_OnLoad не найден в /system/lib/libRSSupport.so 0x41803ab8, пропуск инициализации
08-05 22:21:36.557: E/dalvikvm(11549): ОШИБКА: не удалось найти собственный метод
08-05 22:21:36.557: E/dalvikvm(11549): Запрошено: Landroid/support/v8/renderscript/RenderScript;._nInit:()V
08-05 22:21:36.558: E/JNIHelp (11549): Ошибка регистрации Natives для «android/support/v8/renderscript/RenderScript», прерывание
08-05 22:21:36.558: A/libc(11549): фатальный сигнал 11 (SIGSEGV) по адресу 0xdeadbaad (код =1), поток 11549 (m.example.login)


Вот мой код размытия в отдельном классе:

import android.content.Context;
import android.graphics.Bitmap;
import android.support.v8.renderscript.*;

public class Blur {
public static Bitmap blurBitmap(Context context, Bitmap src) {
Bitmap outBitmap = src.copy(src.getConfig(), true);

final RenderScript rs = RenderScript.create(context);
final Allocation input = Allocation.createFromBitmap(rs, src);
final Allocation output = Allocation.createFromBitmap(rs, outBitmap);

final ScriptIntrinsicBlur script =
ScriptIntrinsicBlur.create(rs, Element.U8_4(rs));
script.setRadius(25f);
script.setInput(input);
script.forEach(output);
output.copyTo(outBitmap);

rs.destroy();

return outBitmap;
}
}


и вот мой код в MainActivity (я получаю растровое изображение из галереи):

Uri selectedImageUri = data.getData();
Blur blur = new Blur();
imagepath = getRealPathFromURI(selectedImageUri);
Bitmap bmImg = BitmapFactory.decodeFile(imagepath);
Bitmap BlurredIMG = Blur.blurBitmap(getApplicationContext(), bmImg);
BitmapDrawable background = new BitmapDrawable(BlurredIMG);
rl.setBackgroundDrawable(background);


Подробнее здесь: https://stackoverflow.com/questions/251 ... android-ph
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Почему renderscript kernel ожидает классов Androidx, а не Android для потемнения изображения на SDK <31
    Anonymous » » в форуме Android
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Использование свертки Renderscript в определенном месте растрового изображения
    Anonymous » » в форуме Android
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Размыть изображение и показать текст при наведении?
    Anonymous » » в форуме CSS
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Размыть изображение и показать текст при наведении?
    Anonymous » » в форуме CSS
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Как преобразовать и размыть изображение до следующего вывода?
    Anonymous » » в форуме Python
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Android»