草庐IT

static-libraries

全部标签

ios - 链接静态库后删除名称

在iOS6的静态库项目中,.c文件中的某些函数被其他函数引用,因此被认为是全局符号,但不应向该库的用户公开。如何剥离这些函数名?另外,我怎样才能隐藏那些obj文件名,以便没有人可以在nm输出中看到.o名称?我尝试启用/设置:部署后处理在复制过程中去除调试符号剥离链接产品strip类型:“非全局符号”或“调试符号”使用单独的strip编辑:我看到还有另一个build设置项“AdditionalStripFlags”。通过在其中添加标志-R/path/to/symbol_list_file,strip命令将删除文件中指示的符号,或-s/path/to/exported_symbol_lis

ios - 从 iOS Developer Library 中的框架访问系统信息

正如标题所说,我正在尝试创建一个应用程序(个人开发)并尝试查看可以从手机中检索什么样的系统信息或用户数据.现在我正在使用提供的刺激器。到目前为止,我能做的是使用AddressBook和UIKit框架检索信息,例如联系方式和系统名称/版本等。是否有任何我错过的系统信息/用户数据,因为我还不知道是否有更多框架可以从手机/刺激器中检索任何信息。我无法测试EventKit框架(我知道的唯一其他框架),因为我正在将应用程序部署到没有所需应用程序的刺激器中。(后期会在越狱iphone上试用)。此外,我还没有找到任何以编程方式访问.sqlitedb/.db/.plist文件的信息,而不是使用任何软件

ios - 如何将仅包含结构的 .h 文件包含到静态库中

我想在iOS的ObjectiveC中创建一个静态库。但是我只想在.h文件中定义结构。不会有任何.m文件文件。structApiResponseStruct{__unsafe_unretainedNSString*constA;__unsafe_unretainedNSString*constB;__unsafe_unretainedNSString*constC;__unsafe_unretainedNSString*constD;};externconststructApiResponseStructApiResponse;因此,当我创建我的静态库并将其包含到演示应用程序中时。它总是

ios - Obj-c 为静态库导出 .h 文件 - 不想公开类定义

我正在努力正确/干净地创建iOS静态库。到目前为止,我已经使用扩展a在我的内部(私有(private)).h声明和公共(public).h声明(被导出)之间创建了一个分隔。我已经“成功”创建了库并看到它在工作。但是我仍然在公共(public)WTDevice.h中公开类声明@interfaceWTDevice:NSObject由于WTDevice继承自WTMinorStateDelegate,我也必须导出WTMinorStateDelegate协议(protocol),我不想这样做,因为它仅在库中使用。顺便说一句,WTDevice扩展位于WTDevice_internal.h中,它不会

iOS Binding Library 不适用于模拟器,但它适用于设备

我正在尝试为Controller创建包装器:https://github.com/ipup/PPRevealSideViewController.使用这些说明http://docs.xamarin.com/guides/ios/advanced_topics/binding_objective-c/binding_walkthrough/我创建了iOS绑定(bind)项目。由于此Controller不是为使用Storyboard而创建的,因此我对其进行了修改(即将初始化替换为其他方法,以便ObjectiveSharpie不会将其包装到构造函数中)。为了测试Controller的工作原理

ios - 使用 XCTestCase 进行静态库测试

我正在创建ISession类的对象,它给我单例实例,当对象被分配和初始化时,它从plist文件中获取值,我在[[NSBundlemainBundle]pathForResource:@"Manifest"ofType:@"plist"]上得到nil,因此对象创建失败。有人可以提供解决方案,以便我可以在静态库而不是项目中编写测试用例。谢谢。 最佳答案 在代码中创建Mock对象,代表来自plist的数据,并在测试文件的setUp方法中实例化它们静态库并不意味着拥有资源。 关于ios-使用XC

ios - 为 iOS 的静态库代码签名

我一直在研究iOS中的代码签名,但仍有一些事情我不清楚。我们已经构建了一个静态库,我们希望能够尽快将其交付给客户。但是,我们需要确保我们遵循正确的代码签名程序,以避免客户的任何投诉。我的问题如下:对于静态库来说,代码签名是必须的吗?还是在我们的案例中是可选的?理想情况下,谁应该对库进行代码签名?应该是我们,还是应该是客户?如果我们是应该这样做的人,是否可以使用任何开发者身份来完成?在某些时候,我们希望我们的客户使用我们的库更新他们在应用商店中的应用。对库进行代码签名是否有可能导致他们出现问题?(如果我们是代码签名者) 最佳答案 您不

ios - 动态库镜像不包含 x86_64、i386 架构

我正在尝试结合架构为iOS构建动态库armv7armv7s64位ARMi386x86_64这是我的目标的build设置如您所见,我已将x86_64和i386添加到Architectures和ValidArchitectures,BuildActiveArchitectureOnly也设置为否。因此,在构建我的二进制文件之后,我通过在终端中运行filemyDl.dylib来检查支持的架构myDl.dylib(forarchitecturearmv7):Mach-OdynamicallylinkedsharedlibraryarmmyDl.dylib(forarchitecturearm6

ios - 将子包包含到主包 iOS 中的正确方法是什么

我有以下情况,我正在尝试制作一个由子项目组成的框架,每个子项目都是一个静态库和一个包。我将那些静态库包含到作为框架的主项目中,我还需要将包包含到主项目中下图可以描述我的结构https://drive.google.com/file/d/0B3tzx8whq3EvaS1JVmV0Mnl5Y3M/view?usp=sharing注意:我通过使用构建阶段脚本将子项目中的包添加到主输出文件夹中所以我的输出被打包为一个包含标题和包的框架我的问题是:如何在运行时访问特定的包?不让客户复制每个包?我可以将所有bundle合并为一个bundle吗?我的意思是包含许多bundle的bundle?如果是,

ios - 静态库在 Xcode 上给出奇怪的错误

我按照RayWenderlich的指示制作了一个静态库(.a),编译它没有错误和警告,然后我将它包含在一个新项目中。当我尝试构建新项目时,出现此错误:/Users/.../PruebaInsights/PruebaInsights/libInsightsLib.a:1:1:SourcefileisnotvalidUTF-8/Users/.../PruebaInsights/PruebaInsights/libInsightsLib.a:1:5:Nullcharacterignored/Users/.../PruebaInsights/PruebaInsights/libInsights