[android] Add native function for user routes feature

Signed-off-by: Fábio Gomes <gabriel.gomes@tecnico.ulisboa.pt>
This commit is contained in:
Fábio Gomes 2024-06-21 09:57:21 +01:00
parent ea4da2a82a
commit 7ab0c25a13
2 changed files with 44 additions and 0 deletions

View file

@ -1854,6 +1854,43 @@ Java_app_organicmaps_Framework_nativeDeleteSavedRoutePoints(JNIEnv *, jclass)
frm()->GetRoutingManager().DeleteSavedRoutePoints();
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_Framework_nativeHasSavedUserRoute(JNIEnv * env, jclass, jstring routeName)
{
return frm()->GetRoutingManager().HasSavedUserRoute(jni::ToNativeString(env, routeName));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_Framework_nativeLoadUserRoutePoints(JNIEnv * env, jclass, jstring routeName)
{
frm()->GetRoutingManager().LoadUserRoutePoints(g_loadRouteHandler, jni::ToNativeString(env, routeName));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_Framework_nativeSaveUserRoutePoints(JNIEnv * env, jclass, jstring routeName)
{
frm()->GetRoutingManager().SaveUserRoutePoints(jni::ToNativeString(env, routeName));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_Framework_nativeDeleteUserRoute(JNIEnv * env, jclass, jstring routeName)
{
frm()->GetRoutingManager().DeleteUserRoute(jni::ToNativeString(env, routeName));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_Framework_nativeRenameUserRoute(JNIEnv * env, jclass, jstring oldRouteName, jstring newRouteName)
{
frm()->GetRoutingManager().RenameUserRoute(jni::ToNativeString(env, oldRouteName), jni::ToNativeString(env, newRouteName));
}
JNIEXPORT jobjectArray JNICALL
Java_app_organicmaps_Framework_nativeGetUserRouteNames(JNIEnv * env, jclass)
{
auto routeNames = frm()->GetRoutingManager().GetUserRouteNames();
return jni::ToJavaStringArray(env, routeNames);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_Framework_nativeShowFeature(JNIEnv * env, jclass, jobject featureId)
{

View file

@ -421,6 +421,13 @@ public class Framework
public static native void nativeSaveRoutePoints();
public static native void nativeDeleteSavedRoutePoints();
public static native boolean nativeHasSavedUserRoute(@NonNull String routeName);
public static native void nativeLoadUserRoutePoints(@NonNull String routeName);
public static native void nativeSaveUserRoutePoints(@NonNull String routeName);
public static native void nativeDeleteUserRoute(@NonNull String routeName);
public static native void nativeRenameUserRoute(@NonNull String oldRouteName, @NonNull String newRouteName);
public static native String[] nativeGetUserRouteNames();
public static native void nativeShowFeature(@NonNull FeatureId featureId);
public static native void nativeMakeCrash();