JNI: как вернуть байтовый массив через поле Java? - PullRequest
1 голос
/ 13 декабря 2011

У меня есть Java-объект и поле byte [] в нем, например:

class MyJavaClass {
public byte[] mData;
}

На стороне JNI у меня есть байтовый массив, подобный этому:

unit8_t* bytes;
int size;

Я могуполучить доступ к этому mData объекту из JNI, но я не знаю, что делать на стороне JNI, чтобы у этого mData объекта были эти байты.

Я не могу выделить jByteArray каждый разпотому что данные меняются довольно часто.Поэтому я просто хочу установить mData из JNI, а затем я сообщу Java через какой-то другой обратный вызов, что я настроил данные.

1 Ответ

0 голосов
/ 13 декабря 2011

Почему вы не хотите эмулировать массив с нативными методами:

public native byte array_get(int idx), public native byte array_set(int idx, byte value)?

...