Converting a byte[] from java (JNI) to pass to NDK
The whole answer can be found below.
Try Our
Documentation
Please check if you can find an answer in our extensive documentation.
Join Us
on Discord
Meet and talk to our staff and the entire Photon-Community via Discord.
Read More on
Stack Overflow
Find more information on Stack Overflow (for Circle members only).
Converting a byte[] from java (JNI) to pass to NDK
liortal53
2013-07-14 09:19:17
Hi,
I'd like to use the native library for Android, and i'd like to pass some data from Java to the native library.
The data i'd like to pass is a byte array (byte[])
I define a JNI native method like so:
JNIEXPORT void JNICALL Java_demo_android_loadBalancing_PhotonNetworkingProvider_raiseEvent(JNIEnv* env, jobject obj, jbyte eventCode, jboolean reliable, jbyteArray data)
A jbyteArray can be converted into a byte array (byte*), however the Photon Cloud library works internally with a nByte type which is incompatible.
How can i properly pass a byte array into the library (to be wrapped as data inside a Hashtable that will be sent in an event) ?
Thanks
Comments
Kaiserludi
2013-07-15 13:30:15
nByte is defined as unsigned char, which matches the C# byte on the server side, which is unsigned, too In you JNI function just cast the byte* to nByte*.
Back to top