Sha256: 80f2046473b72e09d6cbed2bca2dfbf561f8222fdbb29052ac7b4d1cd92c8724

Contents?: true

Size: 1.22 KB

Versions: 8

Compression:

Stored size: 1.22 KB

Contents

#include "JNIRhodes.h"

#undef DEFAULT_LOGCATEGORY
#define DEFAULT_LOGCATEGORY "Ringtone"

RHO_GLOBAL VALUE rho_ringtone_manager_get_all()
{
    JNIEnv *env = jnienv();
    jclass cls = getJNIClass(RHODES_JAVA_CLASS_RINGTONE_MANAGER);
    if (!cls) return Qnil;
    jmethodID mid = getJNIClassStaticMethod(env, cls, "getAllRingtones", "()Ljava/util/Map;");
    if (!mid) return Qnil;

    jobject obj = env->CallStaticObjectMethod(cls, mid);
    if (!obj) return Qnil;
    return convertJavaMapToRubyHash(obj);
}

RHO_GLOBAL void rho_ringtone_manager_stop()
{
    JNIEnv *env = jnienv();
    jclass cls = getJNIClass(RHODES_JAVA_CLASS_RINGTONE_MANAGER);
    if (!cls) return;
    jmethodID mid = getJNIClassStaticMethod(env, cls, "stop", "()V");
    if (!mid) return;
    env->CallStaticVoidMethod(cls, mid);
}

RHO_GLOBAL void rho_ringtone_manager_play(char* file_name)
{
    JNIEnv *env = jnienv();
    jclass cls = getJNIClass(RHODES_JAVA_CLASS_RINGTONE_MANAGER);
    if (!cls) return;
    jmethodID mid = getJNIClassStaticMethod(env, cls, "play", "(Ljava/lang/String;)V");
    if (!mid) return;
    jstring objFileName = rho_cast<jstring>(file_name);
    env->CallStaticVoidMethod(cls, mid, objFileName);
    env->DeleteLocalRef(objFileName);
}

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
rhodes-1.5.5 platform/android/Rhodes/jni/src/ringtones.cpp
rhodes-2.0.0.beta2 platform/android/Rhodes/jni/src/ringtones.cpp
rhodes-2.0.0.beta1 platform/android/Rhodes/jni/src/ringtones.cpp
rhodes-1.5.4 platform/android/Rhodes/jni/src/ringtones.cpp
rhodes-1.5.3 platform/android/Rhodes/jni/src/ringtones.cpp
rhodes-1.5.2 platform/android/Rhodes/jni/src/ringtones.cpp
rhodes-1.5.1 platform/android/Rhodes/jni/src/ringtones.cpp
rhodes-1.5.0 platform/android/Rhodes/jni/src/ringtones.cpp