Program powinien pobrać obraz z karty SD i dostosować jego jasność. Obraz jest pobierany z karty SD za pomocą kodu C NDK. Należy zauważyć, że ciąg znaków przedstawiający ścieżkę do obrazu jest przekazywany do NDK przez JNI.Przekazywanie ciągu znaków do kodu C w systemie Android NDK
kod Java:
private void adjustBrightness() {
imagePath = (Environment.getExternalStorageDirectory().getPath()+"earthglobe.jpeg").toCharArray();
brightness(imagePath, brightness);
}
public native void brightness(char[] imagePath, float brightness);
kod NDK:
JNIEXPORT void JNICALL Java_com_example_ImageActivity_brightness(JNIEnv * env,char[] bitmappath, jfloat brightnessValue)
{
string bmpath = bitmappath+'\0';
jobject obj = fopen(bitmappath , "rb");
}
To jest niedorzeczne: '' jobject obj = fopen (bitmappath, "rb"); ' –