温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

参考珊瑚SDK,jni的调用方式

发布时间:2020-06-18 01:16:16 来源:网络 阅读:499 作者:礼貌的猫 栏目:移动开发
extern "C"
{
#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
    void Java_com_friendou_Interface_coralsdk_SendtoGame(JNIEnv *env, jobject thiz, jstring info)
    {
        const char *temp = env->GetStringUTFChars(info, NULL);

        if (gSDKCallback == NULL || p != NULL)
        {
            __android_log_print(ANDROID_LOG_INFO,"SDKCallbackError","The gSDKCallback pointer is null !");
            return;
        }

        FMJSONDictionary *Recivejson = new FMJSONDictionary();

        Recivejson->initWithDescription(temp);//

        __android_log_print(ANDROID_LOG_INFO,"SDKCallback","SDKCallback message = %s", temp);

        const char *ReciveAction = Recivejson->getItemStringFMValue("action");

        if (strcmp(ReciveAction, "1001") == 0)
        {
            char const *userlist = Recivejson->getItemStringFMValue("userlist");
            __android_log_print(ANDROID_LOG_INFO,"Test","userlist = %s", userlist);

            GameUserSelectedNotification(userlist);//userlist tReturn.c_str()            
        }
        else if (strcmp(ReciveAction, "1002") == 0)
        {
//            char const *userlist = Recivejson->getItemStringFMValue("userlist");
//            GameReplayNotification(userlist);
        }
        else if (strcmp(ReciveAction, "1003") == 0)
        {    
            __android_log_print(ANDROID_LOG_INFO,"Test","LogoutNotify1003");
            LogoutNotify();
        }
        else if (strcmp(ReciveAction, "1004") == 0)
        {
            bool isOn = Recivejson->getItemBoolFMvalue("isOn",false);
            MusicTurnOffAndOn(isOn);
        }
        else if (strcmp(ReciveAction, "1005") == 0)
        {
            bool isOn = Recivejson->getItemBoolFMvalue("isOn",false);
            SoundTurnOffAndOn(isOn);
        }
        else if (strcmp(ReciveAction, "1006") == 0)
        {
            int aisLogin = Recivejson->getItemIntFMValue("isLogin",0);
            LoginResult(aisLogin);
            __android_log_print(ANDROID_LOG_INFO,"Test","LoginResult 1006 = %d", aisLogin);
        }
        else if (strcmp(ReciveAction, "1007") == 0)
        {
            __android_log_print(ANDROID_LOG_INFO,"Test","GameBackNotification   1007");
            GameBackNotification();
        }
        else if (strcmp(ReciveAction, "1008") == 0)
        {
//            ApplicationWillResignActive();
        }
        else
        {
            __android_log_print(ANDROID_LOG_INFO,"SDKCallbackError","Have no this callback !");
            return;
        }
    }
#endif
}


珊瑚SDK官方调用例子,可以下载来看看哦,对于Android开发接入jni还是有很大的帮助


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI