123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- //
- // Created by Grant Limberg on 10/21/20.
- //
- #ifndef ZEROTIERANDROID_ZT_JNIARRAY_H
- #define ZEROTIERANDROID_ZT_JNIARRAY_H
- #include <jni.h>
- #include <vector>
- #include <string>
- extern jclass java_util_ArrayList;
- extern jmethodID java_util_ArrayList_;
- extern jmethodID java_util_ArrayList_size;
- extern jmethodID java_util_ArrayList_get;
- extern jmethodID java_util_ArrayList_add;
- void InitListJNI(JNIEnv* env);
- class ListJNI {
- public:
- // Get the java class id of java.util.List.
- static jclass getListClass(JNIEnv* env);
- // Get the java class id of java.util.ArrayList.
- static jclass getArrayListClass(JNIEnv* env);
- // Get the java class id of java.util.Iterator.
- static jclass getIteratorClass(JNIEnv* env);
- // Get the java method id of java.util.List.iterator().
- static jmethodID getIteratorMethod(JNIEnv* env);
- // Get the java method id of java.util.Iterator.hasNext().
- static jmethodID getHasNextMethod(JNIEnv* env);
- // Get the java method id of java.util.Iterator.next().
- static jmethodID getNextMethod(JNIEnv* env);
- // Get the java method id of arrayList constructor.
- static jmethodID getArrayListConstructorMethodId(JNIEnv* env, jclass jclazz);
- // Get the java method id of java.util.List.add().
- static jmethodID getListAddMethodId(JNIEnv* env);
- };
- class ByteJNI {
- public:
- // Get the java class id of java.lang.Byte.
- static jclass getByteClass(JNIEnv* env);
- // Get the java method id of java.lang.Byte.byteValue.
- static jmethodID getByteValueMethod(JNIEnv* env);
- };
- jobject cppToJava(JNIEnv* env, std::vector<std::string> vector);
- std::vector<std::string> javaToCpp(JNIEnv* env, jobject arrayList);
- #endif //ZEROTIERANDROID_ZT_JNIARRAY_H
|