孤独小码农 发表于 2018-5-15 22:33:52

mknmknmk 发表于 2018-5-15 15:01
修改 gameactivity 源文件不可取 ,只有修改_APL.xml 添加你的import   方法 属性 给gameactivity ,里面还 ...

大神太复杂了,有没有转换好的dame,拿我对比研究下,再次说声谢谢

mknmknmk 发表于 2018-5-16 08:54:49

本帖最后由 mknmknmk 于 2018-5-16 08:58 编辑

孤独小码农 发表于 2018-5-15 22:33
大神太复杂了,有没有转换好的dame,拿我对比研究下,再次说声谢谢
4.18.3 一个安卓的插件
https://pan.baidu.com/s/1FhQf9zs-1DZOkm3vcKP1Yg

w2rk
重点看_APL.xml

https://forums.unrealengine.com/development-discussion/android-development/104216-where-is-gameactivity-java-stored-before-setup

孤独小码农 发表于 2018-5-16 10:31:01

mknmknmk 发表于 2018-5-16 08:54
4.18.3 一个安卓的插件
https://pan.baidu.com/s/1FhQf9zs-1DZOkm3vcKP1Yg



我都不好意思问了,不好意思我是新手,那安卓插件怎么用,

mknmknmk 发表于 2018-5-17 08:57:42

      以GoogleARCoreBase_APL.xml 为例
<resourceCopies> 是资源和动态库拷贝
<androidManifestUpdates> 是权限更新
<gameActivityImportAdditions>GameActivity import 库
<gameActivityClassAdditions> 插入代码
有一个方法 AndroidThunkJava_CreateTangoObject() 是java 实现的
FGoogleARCoreAndroidHelper::CreateTangoObject() c++ 调用java的

<soLoadLibrary> 是加载动态库

TangoNativeEngineMethodWrapper.javajava 调用C++
    public static native void onPoseAvailableNative(TangoPoseData pose); c++ 实现

Java_com_projecttango_unreal_TangoNativeEngineMethodWrapper_onPoseAvailableNative c++ 实现。

mknmknmk 发表于 2018-5-17 09:58:55

本帖最后由 mknmknmk 于 2018-5-17 10:01 编辑

AndroidPermission_APL.xml 为例
<copyDir src > java 文件的拷贝

static bool CheckPermission(const FString& permission); 调用java 方法。

PermissionHelper.java
有         public static native void onAcquirePermissions(String permissions[], int grantResults[]);

对应 c++ 的
Java_com_google_vr_sdk_samples_permission_PermissionHelper_onAcquirePermissions

孤独小码农 发表于 2018-5-18 00:16:26

mknmknmk 发表于 2018-5-17 09:58
AndroidPermission_APL.xml 为例
java 文件的拷贝



我大概想明白了,这么做的目的是为了,在新建的安卓项目里启动c++引擎方法,对吧!!

mknmknmk 发表于 2018-5-19 10:16:43

在安卓项目里不行,在java文件里写好, c++ 对应方法也写好, 编译时 java文件拷贝。 调用java 方法 , c++ 方法执行。

孤独小码农 发表于 2018-5-25 20:42:03

mknmknmk 发表于 2018-5-19 10:16
在安卓项目里不行,在java文件里写好, c++ 对应方法也写好, 编译时 java文件拷贝。 调用java 方法 , c++ ...

http://www.runoob.com/w3cnote/jni-getting-started-tutorials.html
我才搞明白那些是用JNI技术做的混编

孤独小码农 发表于 2018-5-28 13:34:30

mknmknmk 发表于 2018-5-19 10:16
在安卓项目里不行,在java文件里写好, c++ 对应方法也写好, 编译时 java文件拷贝。 调用java 方法 , c++ ...
      java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader,nativeLibraryDirectories=]] couldn't find "libUE4.so"
                                                                        at java.lang.Runtime.loadLibrary0(Runtime.java:1011)
                                                                        at java.lang.System.loadLibrary(System.java:1657)
                                                                        at com.epicgames.ue4.GameActivity.<clinit>(GameActivity.java:3175)
                                                                        at java.lang.Class.newInstance(Native Method)
                                                                        at android.app.Instrumentation.newActivity(Instrumentation.java:1174)
                                                                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2727)
                                                                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2911)
                                                                        at android.app.ActivityThread.-wrap11(Unknown Source:0)
                                                                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1608)
                                                                        at android.os.Handler.dispatchMessage(Handler.java:105)
                                                                        at android.os.Looper.loop(Looper.java:164)
                                                                        at android.app.ActivityThread.main(ActivityThread.java:6665)
                                                                        at java.lang.reflect.Method.invoke(Native Method)
                                                                        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:781)



这问题怎么搞打包已经成功但是会闪退
页: 1 [2]
查看完整版本: UE4导出安卓文件用android studio进行二次开发