UE-- 引入IOS framework 库 真机运行闪退

UE-- 引入IOS framework 库 真机运行闪退

事请是这样的

我编写了一个插件 里面是 调用IOS原生代码的

obj-c与swift混编

我从Xcode编写了一个framework库(动态库)

然后放入ue进行引用

在这里插入图片描述

正常的打包出来了 ipa 文件

结果真机运行报错了

Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Termination Reason: DYLD 1 Library missing
Library not loaded: @rpath/Pay_SDKLib.framework/Pay_SDKLib

说没有动态库 我在ue 的 cs文件 弄了半天 不行以后

我决定找另一条路子

在这里插入图片描述

gpt突然告诉了这个

我直接解压.ipa 文件 (先把后缀名修改为.zip)

然后根据这个路径直接把Xcode中编译出来的文件 复制过去

Frameworks/Pay_SDKLib.framework
在这里插入图片描述

然后先成压缩.zip 然后改尾缀为.ipa

安装到ios真机上 跑起来了!
后先成压缩.zip 然后改尾缀为.ipa

安装到ios真机上 跑起来了!
在这里插入图片描述

2024.9.23 更新
现在可以通过ue的UPL语言进行复制过去
方法如下
1、创建一个.xml文件

<?xml version="1.0" encoding="utf-8" ?>
<root >
	<init>
		<log text="UPL start...."/>
	</init>

 	
		

		
 <trace enable="true"/>
    <iosPListUpdates>
        <addElements tag="dict" once="true">
          		 <key>NSAppleMusicUsageDescription</key>
		<string>文件访问,我们需要文件读写权限以达到软件必要的标志存储</string>
		<key>NSCameraUsageDescription</key>
		<string>我们需要访问您的相机,以便让您拍摄照片和视频。请不要担心我们并没有使用到相</string>
		<key>NSFileProtectionComplete</key>
		<string>我们需要进行加密存储标志	</string>
		<key>LSMinimumSystemVersion</key>
		<string>12.0</string>
        </addElements>

	<copyDir src="$S(PluginDir)/../ThirdParty/IOS/Lib"
        dst="$S(BuildDir)/Frameworks" />



</iosPListUpdates>

	<init>
		<log text="UPL End"/>
	</init>

</root>

其中

<copyDir src="$S(PluginDir)/../ThirdParty/IOS/Lib"
        dst="$S(BuildDir)/Frameworks" />     
    copyDir  其实就是复制文件夹
    $S(BuildDir)   是编译完输出后的  软件名.app 里面的根目录位置 (就是.ipa 解压完时进去的路径)

在这里插入图片描述
复制到的位置
在这里插入图片描述
$S(PluginDir) .xml 文件所在的位置 ( $S(PluginDir) = 加载XML文件的目录)
注意路径结构

在这里插入图片描述

在这里插入图片描述
目录结构
在这里插入图片描述
看看我们cs文件怎么写的
在这里插入图片描述
在这里插入图片描述
下一期 我们会说 简单的 framework 库怎么使用xcode 编译

参考
https://dev.epicgames.com/documentation/zh-cn/unreal-engine/module-properties-in-unreal-engine

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值