JNIEXPORT void JNICALL Java_org_cocos2dx_plugin_InterfaceIAP_nativeOnPayResult(JNIEnv* env, jobject thiz, jstring className, jint ret, jstring msg) { std::string strMsg = PluginJniHelper::jstring2string(msg); std::string strClassName = PluginJniHelper::jstring2string(className); PluginProtocol* pPlugin = PluginUtils::getPluginPtr(strClassName); LOGD("nativeOnPayResult(), Get plugin ptr : %p", pPlugin); if (pPlugin != NULL) { LOGD("nativeOnPayResult(), Get plugin name : %s", pPlugin->getPluginName()); ProtocolIAP* pIAP = dynamic_cast<ProtocolIAP*>(pPlugin); if (pIAP != NULL) { pIAP->onPayResult((PayResultCode) ret, strMsg.c_str()); } } }
JNIEXPORT void JNICALL Java_org_cocos2dx_plugin_IAPWrapper_nativeOnPayResult(JNIEnv* env, jobject thiz, jstring className, jint ret, jstring msg) { std::string strMsg = PluginJniHelper::jstring2string(msg); std::string strClassName = PluginJniHelper::jstring2string(className); PluginProtocol* pPlugin = PluginUtils::getPluginPtr(strClassName); PluginUtils::outputLog("ProtocolIAP", "nativeOnPayResult(), Get plugin ptr : %p", pPlugin); if (pPlugin != NULL) { PluginUtils::outputLog("ProtocolIAP", "nativeOnPayResult(), Get plugin name : %s", pPlugin->getPluginName()); ProtocolIAP* pIAP = dynamic_cast<ProtocolIAP*>(pPlugin); if (pIAP != NULL) { pIAP->onPayResult((PayResultCode) ret, strMsg.c_str()); } else { ProtocolIAP::ProtocolIAPCallback callback = pIAP->getCallback(); if(callback) callback(ret, strMsg); } } }