继续这个问题。
我在框架中嵌入了一个命令行实用程序。第三方使用该实用程序来处理某些处理。我没有办法不能使用该实用程序。
我的问题是,我不知道如何在磁盘上找到我的实用程序。它捆绑在我的主应用程序中的一个框架中,但我不确定如何获得正确的路径。
哈普?
继续这个问题。
我在框架中嵌入了一个命令行实用程序。第三方使用该实用程序来处理某些处理。我没有办法不能使用该实用程序。
我的问题是,我不知道如何在磁盘上找到我的实用程序。它捆绑在我的主应用程序中的一个框架中,但我不确定如何获得正确的路径。
哈普?
如果您为 .frameworkCFBundleIdentifier
的文件设置了正确的包标识符 ( ) 条目,则可以使用'方法获取表示框架的包,然后使用获取可执行文件的路径。只要确保你给框架一个唯一的包标识符(不同于你的主应用包的包标识符)。Info.plist
NSBundle
bundleWithIdentifier:
pathForResource:ofType:
例如,假设我有一个应用程序包CoolApp.app
,其中CFBundleIdentifier
包含com.blah.CoolApp
. 它有一个TextureKit.framework
框架,位于,CoolApp.app/Contents/Frameworks/TextureKit.framework
并有一个CFBundleIdentifier
。com.blah.TextureKit.framework
在 的Resources
文件夹内TextureKit.framework
是一个名为 的可执行文件textureUtility
。我可以使用以下代码获取完整路径textureUtility
:
NSString *path = [[NSBundle bundleWithIdentifier:@"com.blah.TextureKit.framework"]
pathForResource:@"textureUtility"
ofType:@""];