summaryrefslogtreecommitdiff
path: root/Source/Android/jni/AndroidCommon/AndroidCommon.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Android/jni/AndroidCommon/AndroidCommon.cpp')
-rw-r--r--Source/Android/jni/AndroidCommon/AndroidCommon.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/Source/Android/jni/AndroidCommon/AndroidCommon.cpp b/Source/Android/jni/AndroidCommon/AndroidCommon.cpp
index 350ea5483e..04e34c0f21 100644
--- a/Source/Android/jni/AndroidCommon/AndroidCommon.cpp
+++ b/Source/Android/jni/AndroidCommon/AndroidCommon.cpp
@@ -5,6 +5,7 @@
#include "jni/AndroidCommon/AndroidCommon.h"
#include <string>
+#include <vector>
#include <jni.h>
@@ -24,3 +25,15 @@ jstring ToJString(JNIEnv* env, const std::string& str)
{
return env->NewStringUTF(str.c_str());
}
+
+std::vector<std::string> JStringArrayToVector(JNIEnv* env, jobjectArray array)
+{
+ const jsize size = env->GetArrayLength(array);
+ std::vector<std::string> result;
+ result.reserve(size);
+
+ for (jsize i = 0; i < size; ++i)
+ result.push_back(GetJString(env, (jstring)env->GetObjectArrayElement(array, i)));
+
+ return result;
+}