From: Alexis Laferrière Date: Tue, 26 Feb 2019 19:46:52 +0000 (-0500) Subject: android: NitActivity and NitService use long to hold pointers X-Git-Url: http://nitlanguage.org android: NitActivity and NitService use long to hold pointers Signed-off-by: Alexis Laferrière --- diff --git a/lib/android/NitActivity.java b/lib/android/NitActivity.java index 2f712f1..ca15d38 100644 --- a/lib/android/NitActivity.java +++ b/lib/android/NitActivity.java @@ -25,7 +25,7 @@ import android.view.KeyEvent; public class NitActivity extends Activity { // Nit activity associated to `this` - protected int nitActivity = 0; + protected long nitActivity = 0; /* * Calls to Nit or to the C framework @@ -38,21 +38,21 @@ public class NitActivity extends Activity { /* * Callbacks to Nit through C */ - protected native int nitRegisterActivity(); - protected native void nitOnCreate(int activity, Bundle savedInstanceState); - protected native void nitOnStart(int activity); - protected native void nitOnRestart(int activity); - protected native void nitOnResume(int activity); - protected native void nitOnPause(int activity); - protected native void nitOnStop(int activity); - protected native void nitOnDestroy(int activity); - protected native void nitOnSaveInstanceState(int activity, Bundle savedInstanceState); - protected native void nitOnRestoreInstanceState(int activity, Bundle savedInstanceState); - protected native boolean nitOnBackPressed(int activity); - protected native boolean nitOnKeyDown(int activity, int keyCode, KeyEvent event); - protected native boolean nitOnKeyLongPress(int activity, int keyCode, KeyEvent event); - protected native boolean nitOnKeyMultiple(int activity, int keyCode, int count, KeyEvent event); - protected native boolean nitOnKeyUp(int activity, int keyCode, KeyEvent event); + protected native long nitRegisterActivity(); + protected native void nitOnCreate(long activity, Bundle savedInstanceState); + protected native void nitOnStart(long activity); + protected native void nitOnRestart(long activity); + protected native void nitOnResume(long activity); + protected native void nitOnPause(long activity); + protected native void nitOnStop(long activity); + protected native void nitOnDestroy(long activity); + protected native void nitOnSaveInstanceState(long activity, Bundle savedInstanceState); + protected native void nitOnRestoreInstanceState(long activity, Bundle savedInstanceState); + protected native boolean nitOnBackPressed(long activity); + protected native boolean nitOnKeyDown(long activity, int keyCode, KeyEvent event); + protected native boolean nitOnKeyLongPress(long activity, int keyCode, KeyEvent event); + protected native boolean nitOnKeyMultiple(long activity, int keyCode, int count, KeyEvent event); + protected native boolean nitOnKeyUp(long activity, int keyCode, KeyEvent event); /* * Implementation of OS callbacks diff --git a/lib/android/nit_activity.nit b/lib/android/nit_activity.nit index 76723b3..980270c 100644 --- a/lib/android/nit_activity.nit +++ b/lib/android/nit_activity.nit @@ -74,94 +74,94 @@ in "C body" `{ * Implementations of NitActivity.java native methods */ - JNIEXPORT jint JNICALL Java_nit_app_NitActivity_nitRegisterActivity + JNIEXPORT jlong JNICALL Java_nit_app_NitActivity_nitRegisterActivity (JNIEnv *env, jobject java_activity) { Activity nit_activity = App_register_activity(global_app, java_activity); Activity_incr_ref(nit_activity); - return (jint)(void*)nit_activity; + return (jlong)(void*)nit_activity; } JNIEXPORT void JNICALL Java_nit_app_NitActivity_nitOnCreate - (JNIEnv *env, jobject java_activity, jint nit_activity, jobject saved_state) + (JNIEnv *env, jobject java_activity, jlong nit_activity, jobject saved_state) { Activity_on_create((Activity)nit_activity, saved_state); } JNIEXPORT void JNICALL Java_nit_app_NitActivity_nitOnStart - (JNIEnv *env, jobject java_activity, jint nit_activity) + (JNIEnv *env, jobject java_activity, jlong nit_activity) { Activity_on_start((Activity)nit_activity); } JNIEXPORT void JNICALL Java_nit_app_NitActivity_nitOnRestart - (JNIEnv *env, jobject java_activity, jint nit_activity) + (JNIEnv *env, jobject java_activity, jlong nit_activity) { Activity_on_restart((Activity)nit_activity); } JNIEXPORT void JNICALL Java_nit_app_NitActivity_nitOnResume - (JNIEnv *env, jobject java_activity, jint nit_activity) + (JNIEnv *env, jobject java_activity, jlong nit_activity) { Activity_on_resume((Activity)nit_activity); } JNIEXPORT void JNICALL Java_nit_app_NitActivity_nitOnPause - (JNIEnv *env, jobject java_activity, jint nit_activity) + (JNIEnv *env, jobject java_activity, jlong nit_activity) { Activity_on_pause((Activity)nit_activity); } JNIEXPORT void JNICALL Java_nit_app_NitActivity_nitOnStop - (JNIEnv *env, jobject java_activity, jint nit_activity) + (JNIEnv *env, jobject java_activity, jlong nit_activity) { Activity_on_stop((Activity)nit_activity); } JNIEXPORT void JNICALL Java_nit_app_NitActivity_nitOnDestroy - (JNIEnv *env, jobject java_activity, jint nit_activity) + (JNIEnv *env, jobject java_activity, jlong nit_activity) { Activity_on_destroy((Activity)nit_activity); } JNIEXPORT void JNICALL Java_nit_app_NitActivity_nitOnSaveInstanceState - (JNIEnv *env, jobject java_activity, jint nit_activity, jobject saved_state) + (JNIEnv *env, jobject java_activity, jlong nit_activity, jobject saved_state) { Activity_on_save_instance_state((Activity)nit_activity, saved_state); } JNIEXPORT void JNICALL Java_nit_app_NitActivity_nitOnRestoreInstanceState - (JNIEnv *env, jobject java_activity, jint nit_activity, jobject saved_state) + (JNIEnv *env, jobject java_activity, jlong nit_activity, jobject saved_state) { Activity_on_restore_instance_state((Activity)nit_activity, saved_state); } JNIEXPORT jboolean JNICALL Java_nit_app_NitActivity_nitOnBackPressed - (JNIEnv *env, jobject java_activity, jint nit_activity) + (JNIEnv *env, jobject java_activity, jlong nit_activity) { return (jboolean)Activity_on_back_pressed((Activity)nit_activity); } JNIEXPORT jboolean JNICALL Java_nit_app_NitActivity_nitOnKeyDown - (JNIEnv *env, jobject java_activity, jint nit_activity, jint keyCode, jobject event) + (JNIEnv *env, jobject java_activity, jlong nit_activity, jint keyCode, jobject event) { return (jboolean)Activity_on_key_down((Activity)nit_activity, keyCode, event); } JNIEXPORT jboolean JNICALL Java_nit_app_NitActivity_nitOnKeyLongPress - (JNIEnv *env, jobject java_activity, jint nit_activity, jint keyCode, jobject event) + (JNIEnv *env, jobject java_activity, jlong nit_activity, jint keyCode, jobject event) { return (jboolean)Activity_on_key_long_press((Activity)nit_activity, keyCode, event); } JNIEXPORT jboolean JNICALL Java_nit_app_NitActivity_nitOnKeyMultiple - (JNIEnv *env, jobject java_activity, jint nit_activity, jint keyCode, jint count, jobject event) + (JNIEnv *env, jobject java_activity, jlong nit_activity, jint keyCode, jint count, jobject event) { return (jboolean)Activity_on_key_multiple((Activity)nit_activity, keyCode, count, event); } JNIEXPORT jboolean JNICALL Java_nit_app_NitActivity_nitOnKeyUp - (JNIEnv *env, jobject java_activity, jint nit_activity, jint keyCode, jobject event) + (JNIEnv *env, jobject java_activity, jlong nit_activity, jint keyCode, jobject event) { return (jboolean)Activity_on_key_up((Activity)nit_activity, keyCode, event); } diff --git a/lib/android/service/NitService.java b/lib/android/service/NitService.java index b0767d6..fd7e79f 100644 --- a/lib/android/service/NitService.java +++ b/lib/android/service/NitService.java @@ -22,7 +22,7 @@ import android.os.IBinder; // Service implemented in Nit public class NitService extends Service { - protected int nitService = 0; + protected long nitService = 0; static { System.loadLibrary("nit_app"); @@ -51,8 +51,8 @@ public class NitService extends Service { return null; } - protected native int nitNewService(); - protected native int nitOnStartCommand(int nitService, Intent intent, int flags, int id); - protected native void nitOnCreate(int nitService); - protected native void nitOnDestroy(int nitService); + protected native long nitNewService(); + protected native int nitOnStartCommand(long nitService, Intent intent, int flags, int id); + protected native void nitOnCreate(long nitService); + protected native void nitOnDestroy(long nitService); } diff --git a/lib/android/service/service.nit b/lib/android/service/service.nit index b08a9d0..823d16e 100644 --- a/lib/android/service/service.nit +++ b/lib/android/service/service.nit @@ -24,7 +24,7 @@ in "C" `{ // Nit's App running instance, declared in `nit_activity` extern App global_app; - JNIEXPORT jint JNICALL Java_nit_app_NitService_nitNewService + JNIEXPORT jlong JNICALL Java_nit_app_NitService_nitNewService (JNIEnv *env, jobject java_service) { // Pin a ref to the Java service in the Java GC @@ -39,23 +39,23 @@ in "C" `{ Service_incr_ref(nit_service); - return (jint)(void*)nit_service; + return (jlong)(void*)nit_service; } JNIEXPORT jint JNICALL Java_nit_app_NitService_nitOnStartCommand - (JNIEnv *env, jobject java_service, jint nit_service, jobject intent, jint flags, jint id) + (JNIEnv *env, jobject java_service, jlong nit_service, jobject intent, jint flags, jint id) { return Service_on_start_command((Service)nit_service, intent, flags, id); } JNIEXPORT void JNICALL Java_nit_app_NitService_nitOnCreate - (JNIEnv *env, jobject java_service, jint nit_service) + (JNIEnv *env, jobject java_service, jlong nit_service) { Service_on_create((Service)nit_service); } JNIEXPORT void JNICALL Java_nit_app_NitService_nitOnDestroy - (JNIEnv *env, jobject java_service, jint nit_service) + (JNIEnv *env, jobject java_service, jlong nit_service) { Service_on_destroy((Service)nit_service);