diff options
| author | Juan Linietsky | 2014-04-28 21:56:43 -0300 |
|---|---|---|
| committer | Juan Linietsky | 2014-04-28 21:56:43 -0300 |
| commit | 87f37bc5a305e6a68ef232be580350588e300fcc (patch) | |
| tree | 608af97f58c0dd7f2f6f86d973b072f7888bfca0 /platform/android/java_glue.cpp | |
| parent | 7fadc2f93a18f2b5487fbcd6e90bcde781c53fec (diff) | |
| download | godot-87f37bc5a305e6a68ef232be580350588e300fcc.tar.gz godot-87f37bc5a305e6a68ef232be580350588e300fcc.tar.zst godot-87f37bc5a305e6a68ef232be580350588e300fcc.zip | |
Diffstat (limited to 'platform/android/java_glue.cpp')
| -rw-r--r-- | platform/android/java_glue.cpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/platform/android/java_glue.cpp b/platform/android/java_glue.cpp index 8f91f7cc4..5bf2fc5a7 100644 --- a/platform/android/java_glue.cpp +++ b/platform/android/java_glue.cpp @@ -660,7 +660,7 @@ static void _stop_video() { env->CallVoidMethod(godot_io, _stopVideo); } -JNIEXPORT void JNICALL Java_com_android_godot_GodotLib_initialize(JNIEnv * env, jobject obj, jobject activity,jboolean p_need_reload_hook) { +JNIEXPORT void JNICALL Java_com_android_godot_GodotLib_initialize(JNIEnv * env, jobject obj, jobject activity,jboolean p_need_reload_hook, jobjectArray p_cmdline) { __android_log_print(ANDROID_LOG_INFO,"godot","**INIT EVENT! - %p\n",env); @@ -723,8 +723,8 @@ JNIEXPORT void JNICALL Java_com_android_godot_GodotLib_initialize(JNIEnv * env, - os_android = new OS_Android(_gfx_init_func,env,_open_uri,_get_data_dir,_get_locale, _get_model,_show_vk, _hide_vk,_set_screen_orient,_get_unique_id, _play_video, _is_video_playing, _pause_video, _stop_video); - os_android->set_need_reload_hooks(p_need_reload_hook); + os_android = new OS_Android(_gfx_init_func,env,_open_uri,_get_data_dir,_get_locale, _get_model,_show_vk, _hide_vk,_set_screen_orient,_get_unique_id, _play_video, _is_video_playing, _pause_video, _stop_video); + os_android->set_need_reload_hooks(p_need_reload_hook); char wd[500]; getcwd(wd,500); @@ -734,13 +734,23 @@ JNIEXPORT void JNICALL Java_com_android_godot_GodotLib_initialize(JNIEnv * env, __android_log_print(ANDROID_LOG_INFO,"godot","**SETUP"); + const char ** cmdline=NULL; + int cmdlen = env->GetArrayLength(p_cmdline); + cmdline = (const char**)malloc((env->GetArrayLength(p_cmdline)+1)*sizeof(const char*)); + cmdline[cmdlen]=NULL; + for (int i=0; i<cmdlen; i++) { + + jstring string = (jstring) env->GetObjectArrayElement(p_cmdline, i); + const char *rawString = env->GetStringUTFChars(string, 0); + cmdline[i]=rawString; + } #if 0 char *args[]={"-test","render",NULL}; __android_log_print(ANDROID_LOG_INFO,"godot","pre asdasd setup..."); Error err = Main::setup("apk",2,args,false); #else - Error err = Main::setup("apk",0,NULL,false); + Error err = Main::setup("apk",cmdlen,(char**)cmdline,false); #endif if (err!=OK) { |
