应用场景:iOS原生与UE4混编:方案调研
UE4 使用iOS静态库
UE4 引擎加载时调用
void LoadIOSF(ReadOnlyTargetRules Target){
if(Target.Platform == UnrealTargetPlatform.IOS){
PublicAdditionalFrameworks.Add(new Framework("NativeFramework","../../Plugins/ios/NativeFramework.framework.zip", "NativeFramework.bundle"));
PublicAdditionalFrameworks.Add(new Framework("AFNetworking","../../Plugins/ios/AFNetworking.framework.zip"));
PublicAdditionalFrameworks.Add(new Framework("FDFullscreenPopGesture","../../Plugins/ios/FDFullscreenPopGesture.framework.zip"));
PublicAdditionalFrameworks.Add(new Framework("Masonry","../../Plugins/ios/Masonry.framework.zip"));
PublicAdditionalFrameworks.Add(new Framework("MBProgressHUD","../../Plugins/ios/MBProgressHUD.framework.zip"));
PublicAdditionalFrameworks.Add(new Framework("MJRefresh","../../Plugins/ios/MJRefresh.framework.zip", "MJRefresh.bundle"));
}
}
第一个参数是Framework的名称,第二个参数是Framework的路径,第三个参数是资源的路径。(一般都跟Framwork同级目录,所以直接写名称即可。注意这里必填,不然bundle不会生效,有些文章说可以不填,笔者就踩了这个坑,不填不生效)
静态库压缩后放的目录
以MJRefresh.framework.zip 为例,解压状态: