本文整理汇总了C++中JEnv::CallStaticDoubleMethodA方法的典型用法代码示例。如果您正苦于以下问题:C++ JEnv::CallStaticDoubleMethodA方法的具体用法?C++ JEnv::CallStaticDoubleMethodA怎么用?C++ JEnv::CallStaticDoubleMethodA使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类JEnv
的用法示例。
在下文中一共展示了JEnv::CallStaticDoubleMethodA方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CallJavaMethod
//.........这里部分代码省略.........
result = env.CallNonvirtualLongMethodA(callerJavaObject, clazz, mid, javaArgs);
}
else
{
result = env.CallLongMethodA(callerJavaObject, mid, javaArgs);
}
auto jsLong = ArgConverter::ConvertFromJavaLong(result);
args.GetReturnValue().Set(jsLong);
break;
}
case MethodReturnType::Float:
{
jfloat result;
if (isStatic)
{
result = env.CallStaticFloatMethodA(clazz, mid, javaArgs);
}
else if (isSuper)
{
result = env.CallNonvirtualFloatMethodA(callerJavaObject, clazz, mid, javaArgs);
}
else
{
result = env.CallFloatMethodA(callerJavaObject, mid, javaArgs);
}
args.GetReturnValue().Set((double) result); //TODO: handle float value here correctly.
break;
}
case MethodReturnType::Double:
{
jdouble result;
if (isStatic)
{
result = env.CallStaticDoubleMethodA(clazz, mid, javaArgs);
}
else if (isSuper)
{
result = env.CallNonvirtualDoubleMethodA(callerJavaObject, clazz, mid, javaArgs);
}
else
{
result = env.CallDoubleMethodA(callerJavaObject, mid, javaArgs);
}
args.GetReturnValue().Set(result);
break;
}
case MethodReturnType::String:
{
jobject result = nullptr;
bool exceptionOccurred;
if (isStatic)
{
result = env.CallStaticObjectMethodA(clazz, mid, javaArgs);
}
else if (isSuper)
{
result = env.CallNonvirtualObjectMethodA(callerJavaObject, clazz, mid, javaArgs);
}
else
{
result = env.CallObjectMethodA(callerJavaObject, mid, javaArgs);
}
if (result != nullptr)
{
示例2: CallJavaMethod
//.........这里部分代码省略.........
result = env.CallNonvirtualLongMethodA(callerJavaObject, clazz, mid, javaArgs);
}
else
{
result = env.CallLongMethodA(callerJavaObject, mid, javaArgs);
}
auto jsLong = ArgConverter::ConvertFromJavaLong(result);
args.GetReturnValue().Set(jsLong);
break;
}
case 'F': //float
{
jfloat result;
if (isStatic)
{
result = env.CallStaticFloatMethodA(clazz, mid, javaArgs);
}
else if (isSuper)
{
result = env.CallNonvirtualFloatMethodA(callerJavaObject, clazz, mid, javaArgs);
}
else
{
result = env.CallFloatMethodA(callerJavaObject, mid, javaArgs);
}
args.GetReturnValue().Set((double) result); //TODO: handle float value here correctly.
break;
}
case 'D': //double
{
jdouble result;
if (isStatic)
{
result = env.CallStaticDoubleMethodA(clazz, mid, javaArgs);
}
else if (isSuper)
{
result = env.CallNonvirtualDoubleMethodA(callerJavaObject, clazz, mid, javaArgs);
}
else
{
result = env.CallDoubleMethodA(callerJavaObject, mid, javaArgs);
}
args.GetReturnValue().Set(result);
break;
}
case '[':
case 'L':
{
bool isString = returnType == "Ljava/lang/String;";
jobject result = nullptr;
bool exceptionOccurred;
if (isString)
{
if (isStatic)
{
result = env.CallStaticObjectMethodA(clazz, mid, javaArgs);
}
else if (isSuper)
{
result = env.CallNonvirtualObjectMethodA(callerJavaObject, clazz, mid, javaArgs);
}
else