[Android][Renderscript], передавая rs_script (он же struct rs_script) параметру несовместимого типа rs_kernel (он же void *')
При попытке запустить приложение со скриптом рендеринга на устройстве Android N - я получаю только эту ошибку
error:passing 'rs_script' (aka 'struct rs_script') to parameter of incompatible type 'rs_kernel' (aka 'void *')
Но тот же проект работает в Android 6 без каких-либо ошибок. Также я могу сгенерировать файл apk, но в Android N он вылетает.
Вот проблема, которую это дает -
rs_script gScript;
void filter() {
rsForEach(gScript, gIn, gOut);
}
...
конфигурация gradle
defaultConfig {
.....
minSdkVersion 16
targetSdkVersion 25
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
renderscriptTargetApi 18
renderscriptSupportModeEnabled true
}
и правила proguard
-keep class public
-keep class android.support.v8.renderscript.** { *; }
Я пытался с разными renderscriptTargetApi
24 или 22, но он продолжает выдавать ту же ошибку.
1 ответ
В конфигурации по умолчанию я изменил targetSdkVersion 21
, Потому что я пытался запустить приложение в 7.0.0 (Android 24). Это сработало.