草庐IT

static-libraries

全部标签

iphone - 如何将需要 iOS4 的静态库添加到部署目标设置为 3.0 的项目中?

我想将至少需要iOS4的静态库添加到部署目标设置为3.0的项目中-我该怎么做?我的猜测是我添加了二进制文件并使其成为弱链接(在目标的“构建阶段”->“将二进制文件与库链接”选项下设置名称“可选”)并确保运行时iOS版本检查(UIDevice的systemVersion属性),该库的代码不会在iOS版本低于4.0的设备上被调用。正确吗?还有什么我应该做的吗? 最佳答案 如果您指的是静态库所依赖的框架(动态库),那么您是对的,这些应该标记为可选。此外,您还必须进行运行时检查,以防止调用不存在的功能失败。

iOS条件链接静态库

我有一个为armv7和i386编译的胖静态库。在我的iPhone/iPad项目中,一切正常,但我只能在armv7设备上安装我的应用程序,因此iPhone3gs及更高版本...有一种方法可以在armv6上运行我的项目,这样我就可以将它安装在ipodtouch和旧的iphone版本上(即使我禁用了armv7库)。我试试这个:#ifdef_ARM_ARCH_7...//includeanduseofarmv7library#else...//notincludearmv7library#endif但是当我编译我的项目时我有链接错误...命令/Developer/Platforms/iPhon

ios - 如何为 armv6、armv7 和 i386 构建胖静态库

我遵循了Buildfatstaticlibrary(device+simulator)usingXcodeandSDK4+的指南构建libmms(https://github.com/kosher-penguin/xcode-libmms),并得到一个胖静态库,但它似乎不起作用。将库添加到我的项目时出现错误(xCode4.2+iOS5.0):Undefinedsymbolsforarchitecturearmv7:"_iconv_close",referencedfrom:_mms_connectinlibMMS.a(mms.o)"_Status_GetNewStatusByKey",

ios - iOS 上的 TouchJSON : dictionaryWithJSONString unrecognized selector sent to class

我有一个包含TouchJSON的静态库,我正在尝试使用dictionaryWithJSONString:error:(在静态库中),但我不断收到标题中显示的运行时异常。我已经包含了NSDictionary类的头文件,扩展的实现文件肯定在静态库的编译资源列表中。还有什么问题? 最佳答案 您需要在应用程序目标的build设置中将-ObjC添加到OtherLinkerFlags。 关于ios-iOS上的TouchJSON:dictionaryWithJSONStringunrecognized

objective-c - 在不添加 .a 文件的情况下使用 iOS 静态库

我们可以使用iOSStaticLibrarieswithoutaddingheaderfilesintotheproject.但是我想在不将.a文件添加到项目中的情况下使用静态库 最佳答案 终于找到解决办法了静态库的路径应该添加到->target->buildsettings->OtherLinkerFlags例如)/Source/iPhoneApp/libs/Connection/build/Debug-iphonesimulator/libConnection.a/Source/iPhoneApp/libs/SocialNetw

ios - 无法将结构从非托管库编码到 monotuch 中的托管代码

我在供应商提供给我们的库的头文件中定义了以下结构。typedefstruct{intiLen;intiType;intstate;unsignedchardata[1200];}TCardCmdRespond;我在C#中创建了一个我认为匹配的结构。[StructLayout(LayoutKind.Sequential)]publicstructTCardCmdRespond{publicintiLen;publicintiType;publicintstate;publicbyte[]data;}这里我有几点要指出。我不确定unsignedchar数组应该映射到什么。我最初猜测unsi

ios - 构建 iOS 静态库时没有设置标题可见性的选项

我正在使用Xcode4.4构建一个iOS静态库。但是当我设置标题的可见性时,我看不到任何选项。通常应该有一些选项,例如Public、Private、Project。对比了一些其他的lib项目,还是找不到问题...当我选择Hellor.h时,文件检查器的屏幕截图如下所示: 最佳答案 自Xcode4.4以来,情况确实发生了变化。我向AppleDeveloperTechnicalSupport寻求帮助,这里是回复:在最新的Xcode中,导出的header设置在目标库的构建阶段下。默认情况下,静态库模板创建一个“复制文件”阶段。添加到此阶段

iOS - 创建一个依赖于标准框架的静态库

我正在为iOS6创建一个依赖于内置安全框架的静态库,但我在让它工作时遇到了一些问题。当我构建包含安全框架的库时,一切都按预期构建。但是,当我通过一个新的工作区项目将我的静态库拉入我的测试应用程序所在的工作区并尝试构建包含该库的应用程序时,我遇到了一些构建错误。我已经追踪到由测试应用程序未找到安全框架引起的构建错误。我已将静态库目标添加到我的测试应用程序并设置header搜索路径,就像我在其他库上所做的那样,但仍然遇到相同的错误。所以我的问题是,如果您在静态库中包含一个框架,例如安全框架,您是否还必须在要使用该库的应用程序中包含该框架?谢谢大家!编辑:另外,我可能会补充说,我已尝试将安全

objective-c - 静态库中的 UIAppearance

我们为客户提供了一个静态库,允许他们显示我们的ViewController。我们使用UIAppearance来设置我们的UIViewController的样式。但是,使用UIAppearance也可以为使用静态库的用户自定义外观,但我们希望它仅将其应用于我们的静态库。有没有办法在库级别制作UIAppearance?提前致谢! 最佳答案 您需要使用方法作为[[UINavigationBarappearanceWhenContainedIn:(Class)ContainerClass,...]setProperty:]例如,[[UIBa

objective-c - XCode 中是否有一种跨项目重用类并轻松与其他开发人员共享的好方法?

我有一个我创建的库,我想在几个不同的项目中使用包含的类,同时独立维护库代码。我还希望能够轻松地与其他开发人员共享它并让他们轻松实现它。此时它不需要是静态库。执行此操作的最佳方法是什么?我看到其他开发人员将他们的类放在一个全新的XCode项目中,然后将其导入,但最佳实践是什么? 最佳答案 我认为最好的做法是创建一个带有静态库目标的项目。其他开发人员可以将其作为子项目包含在他们的项目中。第二个最好的方法是简单地创建一个源文件目录,可以根据需要将其包含在项目中。这对于特定项目可能不需要全部实用程序代码的通用实用程序代码很有用。在这两种情况