UE4导出安卓文件用android studio进行二次开发

[复制链接]
mknmknmk | 2018-5-15 09:00:07 | 显示全部楼层
本帖最后由 mknmknmk 于 2018-5-15 09:01 编辑

https://pan.baidu.com/s/12lloKrVo1OZgXENTZ6TYiw

bhrt

搜索源文件 _APL.xml
回复 支持 反对

使用道具 举报

mknmknmk | 2018-5-15 14:35:16 | 显示全部楼层
你只需 拷贝gameactivity  和 ue4.so   加入到你的工程,

把你的 so文件加入 然后修改gameactivity      通过 _APL 修改拷贝的静态库动态,动态修改gameactivity
查看 https://forums.unrealengine.com/ ... -language-reference
回复 支持 反对

使用道具 举报

mknmknmk | 2018-5-15 14:38:24 | 显示全部楼层
本帖最后由 mknmknmk 于 2018-5-15 14:48 编辑

https://answers.unrealengine.com ... y-or-extend-ga.html

这个就是修改 gameActivity 的xml 语言 ,其中包含java 语言。

https://blog.csdn.net/or_7r_ccl/article/details/72899036


https://blog.csdn.net/maxiaosheng521/article/details/61914832
回复 支持 反对

使用道具 举报

mknmknmk | 2018-5-15 14:52:52 | 显示全部楼层
mknmknmk 发表于 2018-5-15 14:35
你只需 拷贝gameactivity  和 ue4.so   加入到你的工程,

把你的 so文件加入 然后修改gameactivity       ...

http://aigo.iteye.com/blog/2278608
回复 支持 反对

使用道具 举报

mknmknmk | 2018-5-15 15:01:35 | 显示全部楼层
修改 gameactivity 源文件不可取 ,只有修改_APL.xml 添加你的import   方法 属性 给gameactivity ,里面还有资源 已经动态库的拷贝,tag 节点的动态添加 tag 属性修改。 c++ 和 java 互相调用等。
回复 支持 反对

使用道具 举报

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/ ... stored-before-setup
回复 支持 反对

使用道具 举报

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.java  java 调用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
回复 支持 反对

使用道具 举报

mknmknmk | 2018-5-19 10:16:43 | 显示全部楼层
在安卓项目里不行,在java文件里写好, c++ 对应方法也写好, 编译时 java文件拷贝。 调用java 方法 , c++ 方法执行。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则