iOS中Markdown解析集成流程

--ByPass iOS集成

一、前言

项目中用到markdown解析,找了很多第三方库,重构了好几次都不能满足需求,后来用了ByPass这个SDK,通过调试完成了需求的实现,这里进行一下总结。

ByPass链接:https://github.com/Uncodin/bypass(根据需求选择不同的客户端Android&iOS)。

二、集成步骤

1、下载SDK,先通过github链接下载SDK到本地。


2、导入SDK到项目中

1> 先把SDK中ios文件夹拷贝到自己的工程文件夹里面,保证路径的一致性。

2> 打开自己的工程,导入bypass项目,这里是要导入项目,而不是一般的导入文件夹。Xcode9.0以后导入文件最好不要拖拽,容易出现bug,所以通过File->Add files to xxx->Bypass.xcodeproj(在ios->Bypass文件夹下)。


导入到项目


3> 选择自己的项目->Build

Phases->Target Dependencies,点击“+”号,选择Bypass


导入bypass


4> 选择自己的项目->Build

Phases->Link Binary With Libraries,添加一些库文件。libBypass.a,

CoreGraphics.framework, CoreText.framework, Foundation.framework,

QuartzCore.framework, UIKit.framework。


5> 选择自己的项目->BuildSettings

Other Linker Flags: 添加-ObjC

Header Search Paths: 添加bypass路径$(SRCROOT)//Bypass/Bypass

当前项目示例:$(SRCROOT)/QiaoBooks/Bypass/Bypass

C++ Standard Library: libc++ (LLVM C++ standard librarywith C++11 suport)

综上几个步骤之后SDK算是导入成功了,但是可能会存在文件找不到的问题:

1>  bypass.h file not found。这个可以通过如下步骤解决:定位到自己的项目->Build Phases->Link Binary With Libraries,点击“+”号->Add Other, 从Bypass->Bypass文件夹中选择bypass.h添加到项目中即可。

2>  提示element.h等库文件丢失

到原下载的文件夹中拷贝两个内容到项目Bypass文件夹下:


导入丢失的文件


然后通过Add files to

xxx分别拷贝两个文件夹的内容到工程的如下路径中:


拷贝丢失的文件


1>  第2个问题导入库文件后可能会有重复文件的报错,查看报错的原因,删除多余的库文件即可。一般是Soldout下的文件会重复导入,比对后进行删除。


三、SDK使用

SDK导入完,运行一下如果不报错,就可以开始调用了。

1.   在需要用到markdown解析的文件中,导入“Bypass.h”头文件。

2.    使用时控件可以直接用UILabel也可以用UITextView,我这里的需求需要用UITextView,代码如下:

引用代码


其中BPAttributedStringConverter的init方法是由于项目需要,自己本地做了部分修改,如果没有其他需求,直接用init方法就可以了。

你可能感兴趣的:(iOS中Markdown解析集成流程)