KissXML
KissXML 为没有 NSXML (例如 iOS) 的环境提供了一个 Apple 的 NSXML 类集的直接替换品。
它建立在默认的 libxml2 C 库之上,该库在 Mac 和 iOS 上预先安装。但它隐藏了所有低级别的 C 指针和 malloc 的繁琐,并提供了一个易于使用的 Objective-C 库。
它是为了速度和可靠性而设计的,所以它是读访问线程安全的,并且可以“直接运行”。也就是说,KissXML 提供了一个符合从Objective-C库中预期的规则的 API。所以您可以自由地做事,比如并行处理 XML 文档使用 blocks,它会“直接运行”,这样您就可以回到设计您的应用的其他部分。
KissXML 是一个用于数以千计的产品并且成熟的库。它还用于其他库,例如 XMPPFramework(一个用于实时 XML 流的Objective-C库)。它甚至用于医院应用中。
KissXML 受到 TouchXML 项目的启发,但被创造出来以添加对生成 XML 和支持整个 NSXML API 的完整支持。
入门指南
最低部署目标是 iOS 8.0 / macOS 10.9 / tvOS 9.0 / watchOS 2.0。
CocoaPods
安装 KissXML
最简单的方法是使用 CocoaPods。
use_frameworks!
pod 'KissXML'
执行pod install
后,打开您的.xcworkspace
文件并导入。
// Swift
import KissXML
// Objective-C on iOS 8+ with `use_frameworks!`
@import KissXML;
Carthage
KissXML.xcodeproj
项目包含iOS、macOS、tvOS和watchOS的框架目标。
了解更多
无法在[wiki](https://github.com/robbiehanson/KissXML/wiki)文章中找到您问题的答案?尝试**[邮件列表](http://groups.google.com/group/kissxml)**。
喜欢这个项目?想要支持我?
更新日志
- 5.2.0 - 2017年2月2日 - Swift 3和Carthage支持。需要iOS 8或更高版本,删除了静态库支持。
- 5.1.2 - 2016年7月8日 - 通过更接近地匹配NSXML头文件,更好的Swift生成的接口跨兼容性,特别是将许多设置/获取方法更改为属性。
- 5.1.1 - 2016年7月7日 - 解决作为静态库集成时的问题。最低iOS版本恢复到6.0。将DDXML→NSXML Swift映射移动到
SwiftNSXML
子规范中。添加了静态库集成的测试。 - 5.1.0 - 2016年7月6日 - 通过从公共头文件中删除对libxml的引用来删除对
libxml_module
子规范的依赖。添加了与NSXML API兼容的Obj-C泛型和可空支持。添加了对watchOS的支持。最低iOS版本现在是8.0。 - 5.0.3 - 2016年2月1日 - 删除了
DDXML_NS_DECLARATIONS_ENABLED
,以允许更好的Swift兼容性。添加了包含NSXML类和常量与DDXML之间的映射的DDXML.swift
。 - 5.0.2 - 2016年1月26日 - 通过在
libxml/module.modulemap
和DDXML_LIBXML_MODULE_ENABLED
宏中启用Swift支持。您可以使用KissXML/libxml_module
CocoaPods子规范来启用此功能。 - 5.0.1 - 2016年1月21日 - 在iOS和Mac目标上运行测试。