4 #include <android/log.h>
10 jobject *android_activity;
14 android_find_class_global(char *name, jclass *ret)
16 *ret=(*jnienv)->FindClass(jnienv, name);
18 dbg(0,"Failed to get Class %s\n",name);
21 (*jnienv)->NewGlobalRef(jnienv, *ret);
26 android_find_method(jclass class, char *name, char *args, jmethodID *ret)
28 *ret = (*jnienv)->GetMethodID(jnienv, class, name, args);
30 dbg(0,"Failed to get Method %s with signature %s\n",name,args);
37 android_find_static_method(jclass class, char *name, char *args, jmethodID *ret)
39 *ret = (*jnienv)->GetStaticMethodID(jnienv, class, name, args);
41 dbg(0,"Failed to get static Method %s with signature %s\n",name,args);
47 JNIEXPORT void JNICALL
48 Java_org_navitproject_navit_Navit_NavitMain( JNIEnv* env, jobject thiz, jobject activity, jobject lang)
50 char *strings[]={"/data/data/org.navitproject.navit/bin/navit",NULL};
52 __android_log_print(ANDROID_LOG_ERROR,"test","called");
54 android_activity=activity;
55 (*jnienv)->NewGlobalRef(jnienv, activity);
56 langstr=(*env)->GetStringUTFChars(env, lang, NULL);
57 dbg(0,"enter env=%p thiz=%p activity=%p lang=%s\n",env,thiz,activity,langstr);
58 (*env)->ReleaseStringUTFChars(env, lang, langstr);
59 main_real(1, strings);
62 JNIEXPORT void JNICALL
63 Java_org_navitproject_navit_NavitGraphics_SizeChangedCallback( JNIEnv* env, jobject thiz, int id, int w, int h)
65 dbg(0,"enter %p %d %d\n",(struct callback *)id,w,h);
67 callback_call_2((struct callback *)id,w,h);
70 JNIEXPORT void JNICALL
71 Java_org_navitproject_navit_NavitGraphics_ButtonCallback( JNIEnv* env, jobject thiz, int id, int pressed, int button, int x, int y)
73 dbg(1,"enter %p %d %d\n",(struct callback *)id,pressed,button);
75 callback_call_4((struct callback *)id,pressed,button,x,y);
78 JNIEXPORT void JNICALL
79 Java_org_navitproject_navit_NavitGraphics_MotionCallback( JNIEnv* env, jobject thiz, int id, int x, int y)
81 dbg(1,"enter %p %d %d\n",(struct callback *)id,x,y);
83 callback_call_2((struct callback *)id,x,y);
86 JNIEXPORT void JNICALL
87 Java_org_navitproject_navit_NavitTimeout_TimeoutCallback( JNIEnv* env, jobject thiz, int delete, int id)
89 dbg(1,"enter %p %d %p\n",thiz, delete, (void *)id);
90 callback_call_0((struct callback *)id);
92 (*jnienv)->DeleteGlobalRef(jnienv, thiz);
95 JNIEXPORT void JNICALL
96 Java_org_navitproject_navit_NavitVehicle_VehicleCallback( JNIEnv * env, jobject thiz, int id, jobject location)
98 callback_call_1((struct callback *)id, (void *)location);
101 JNIEXPORT void JNICALL
102 Java_org_navitproject_navit_NavitIdle_IdleCallback( JNIEnv* env, jobject thiz, int id)
104 dbg(1,"enter %p %p\n",thiz, (void *)id);
105 callback_call_0((struct callback *)id);
108 JNIEXPORT void JNICALL
109 Java_org_navitproject_navit_NavitWatch_poll( JNIEnv* env, jobject thiz, int fd, int cond)
113 dbg(1,"%p poll called for %d %d\n",env, fd, cond);
114 switch ((enum event_watch_cond)cond) {
115 case event_watch_cond_read:
118 case event_watch_cond_write:
121 case event_watch_cond_except:
131 JNIEXPORT void JNICALL
132 Java_org_navitproject_navit_NavitWatch_WatchCallback( JNIEnv* env, jobject thiz, int id)
134 dbg(1,"enter %p %p\n",thiz, (void *)id);
135 callback_call_0((struct callback *)id);