我正在使用Appcelerator / Titanium编写应用程序,目前我正在尝试在我的本机模块上使用第三方框架,并且我已经在iOS Module Project - Add a Third-Party Framework文档上执行了所有步骤到目前为止。
我已将框架添加到平台文件夹(在我的模块项目文件夹中)并将它们链接起来。
然后我将FRAMEWORK_SEARCH_PATHS和OTHER_LDFLAGS添加到我的module.xcconfig文件
FRAMEWORK_SEARCH_PATHS = $(SRCROOT)/../../ modules / iphone / module / version / platform / iphone~ / Library / Application \ Support / Titanium / modules / iphone / module / version / platform / iphone / Applications /Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library / *必须添加这个,否则应用甚至不会编译* / < / p>
OTHER_LDFLAGS = $(继承)-framework CoreBluetooth -framework ExternalAccessory -framework AWSCore -framework AWSCognito -framework AWSKinesis
我能够构建它并且&#34;安装&#34;我的应用程序上的模块,即使编译也没问题,但是当我尝试打开设备(物理设备或模拟器)上安装的应用程序时,它会打开然后关闭。
我检查了设备上写的日志并找到了
Dyld错误消息: Dyld消息:未加载库:@ rpath / AWSCore.framework / AWSCore 参考自:/var/containers/Bundle/Application/DCE36838-FA72-4EEC-879B-7C2C8785742F/Project.app/Fiat Live On 原因:找不到图像 Dyld版本:390.7
我已经尝试了许多不同的方法,但是其中一些我的应用程序由于未定义的符号而无法编译,而其他我的应用程序在编译时找不到框架失败,我尝试在有效的架构上添加i386和x86_64架构而没有,它编译,安装,然后错误。
我错过了什么吗?我已经尝试了很多东西,但似乎没有用......[编辑1]
我不知道版本是否与它有任何关系,但检查了我的appcelerator / titanium和SDK版本,我得到了这个。
appc -v [5.2.2]
appc ti -v [5.0.6]
ti -v [5.0.8]
appc ti sdk [5.2.2.GA]
AWS SDK版本: AWS-IOS-SDK-2.4.7
好的,谢谢。
答案 0 :(得分:0)
这是我们使用的aws模块的片段
module.xcconfig:
FRAMEWORK_SEARCH_PATHS=$(SRCROOT)/../../modules/iphone/com.featherdirect.tiawss3/0.8.3/platform "~/Library/Application Support/Titanium/modules/iphone/com.featherdirect.tiawss3/0.8.3/platform"
OTHER_LDFLAGS=$(inherited) -framework AWSCore -framework AWSS3 -framework AWSCognito
aws框架位于platform
与.xcodeproj相同的级别
你是对的,你不应该引用系统库。但我所看到的是,你可能实际上并没有引用框架的最终位置。