最近在学习UE4时,用到了在插件中用C++调用Java函数,在这里记录一下。
首先我们要把要调用的Java函数放到插件中的.xml文件中的gameActivityClassAdditions位置,示例如下:
<gameActivityClassAdditions>
<if condition="Android_bEnablecode">
<true>
<insert>
public void Log()
{
System.out.println("调用成功");
}
</insert>
</true>
</if>
</gameActivityClassAdditions>
如果调用的函数中内容较多,需要导入第三方.jar文件和头文件的,头文件放到gameActivityImportAdditions下,导入的第三方.jar文件放到resourceCopies下,具体内容请查看上一篇博客:UE4中,android第三方类库的接入。
在.xml文件中加入好我们要调用的Java函数以后,我们在C++中添加以下几行代码即可调用到Java代码:
#if PLATFORM_ANDROID
if (JNIEnv* Env = FAndroidApplication::GetJavaEnv())
{
stati