La adición de Renderscript en el estudio de Android 1.0.1 con API @ 21 y SDKTools @ 21.1.2 causa errores de compilación

Estoy intentando portar un Android 4.4 a Android 5.0. Mi aplicación utiliza Renderscript. Actualmente la aplicación renderscript es muy simple

#pragma version(1) // RenderScript version, 1 is the only one for now #pragma rs java_package_name(com.example.andriod.rs_android_5) // our package #pragma rs_fp_relaxed uint16_t *output; const uint16_t *input; void __attribute__((kernel)) encrypt(uint16_t In, uint32_t x, uint32_t y){ output[in] = x*input[in]; } 

Mi build.gradle se parece a esto:

 apply plugin: 'com.android.application' android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { applicationId "com.example.andriod.rs_android_5" minSdkVersion 21 targetSdkVersion 21 versionCode 1 versionName "1.0" renderscriptSupportModeEnabled true renderscriptTargetApi 21 } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) } 

El error que obtengo es: Error: Error de ejecución para la tarea ': app: compileDebugRenderscript'.

com.android.ide.common.internal.LoggedErrorException: Error al ejecutar el comando: /Users/user/Documents/sdk/build-tools/21.1.2/bcc_compat -O3 -o / Users / user / Documents / Android / rs_android_5 / app / build / intermedios / rs / debug / obj / armeabi-v7a / encrypt.o -fPIC -shared -rt-path /Users/user/Documents/sdk/build-tools/21.1.2/renderscript/lib/bc/ armeabi-v7a / libclcore.bc -mtriple armv7-none-linux-gnueabi /Users/user/Documents/Android/rs_android_5/app/build/generated/res/rs/debug/raw/bc64/encrypt.bc Código de error: 1 Salida: ADVERTENCIA: Vincular dos módulos de diferentes diseños de datos: '/Users/user/Documents/sdk/build-tools/21.1.2/renderscript/lib/bc/armeabi-v7a/libclcore.bc' es 'em: ep: 32: 32-i64: 64-v128: 64: 128-n32-S64 'mientras que' /Users/user/Documents/Android/rs_android_5/app/build/generated/res/rs/debug/raw/bc64/encrypt.bc ADVERTENCIA: Vincular dos módulos de tres triples objetivo: /Users/user/Documents/sdk/build-tools/21.1.2/renderscript/ lib / bc / armeabi-v7a / libclcore.bc 'es' armv 7-none-linux-gnueabi ', mientras que' /Users/user/Documents/Android/rs_android_5/app/build/generated/res/rs/debug/raw/bc64/encrypt.bc 'es' aarch64-none-linux-gnueabi 'E / bcc (27923): No se puede compilar la fuente en el archivo /Users/user/Documents/Android/rs_android_5/app/build/intermediates/rs/debug/obj/armeabi-v7a/encrypt.o! (Error al cargar el código de bits de entrada) Error al compilar el script!

Si modifico mi build.gradle a destino 20 o inferior el error desaparece. ¿Alguien ha creado correctamente una aplicación Renderscript orientada a la API 21?

No puede utilizar el modo de soporte al orientar la API 21 (o superior) ahora mismo. Si tiene la intención de utilizar la API 21+, debe cambiar a las API RS nativas en su lugar (y eliminar el renderscriptSupportModeEnabled).

  • Invocación de la función de bloqueo de RenderScript
  • Allocation.copyTo (Bitmap) que daña valores de píxeles
  • Script de procesamiento de Android
  • Lista de dispositivos en los que Renderscript no funciona
  • No se puede ejecutar Renderscript HelloCompute ejemplo en Android GB 2.3.5
  • ApplicationStatus clase E / SysUtils: ApplicationContext es null en ApplicationStatus
  • Se ha producido un error en la carga del script ScriptC - android render script
  • Encuentra la velocidad del procesador de un dispositivo Android en MHz
  • La biblioteca de soporte de RenderScript se bloquea en dispositivos x86
  • ¿Por qué no funciona rsDebug?
  • Cómo utilizar ScriptIntrinsicYuvToRGB (convertir byte yuv a byte rgba)
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.