iOS RN 通联支付

支付有很多 支付宝  微信 银联  等等  网上封装的也有很多 通联也有但是用的很少  在使用过程中 也在网上查找了下 下面就目前项目中使用的 以及个人在和通联开发人员对接的过程中 写下个人心得 如有纰漏 欢迎拍砖 

通联支付 我们是直接和他们的开发人员对接的 没有参照官网 好像官网的SDK 并不是他们随时更新的 有时候会有问题 就本人项目中 开始用的是开发共享到群里的(开发人员对接群) 但是不行 后来一想官网总之是对的吧  后来发现我还是太天真了  最后和他们技术交流下 才知道SDK 用的不是他们最新的 说多了都是泪啊  所以如果在开发之前一定要记得 问他们要最新的SDK  最新的SDK  最新的SDK

原生模块

通联移动支付地址:SDK 地址

如果你是接入原生的话 那么看上这篇文章就够了  其实也不是很麻烦 iOS原生接入

这里在集成的时候我遇到一个问题  也不算是问题  如果有经验的应该可以自己解决 


iOS RN 通联支付_第1张图片
allinpay

这里 demo里 这个路径不对 不过后来 问开发人员要的新文件就可以了 如果有遇到 

只需把TrustDefenderMobile.framework/Versions/A目录下的文件 复制拷贝到根目录下即可 。

还有一个就是添加库依赖的时候 如果是新建项目的时候没有  libsqlite3.0.tbd 需要添加上 我开始的时候是自己重新搭建的一个项目是测试的 结果发现说没有  libsqlite3.0.tbd  但是文档中好像没有写  这点请注意点 不添加 也会报错的  到时就知道错误在哪了 

在文档介绍中 说需要重新配置framework 和liaApay 的路径 不过我是直接把文件拖到项目 路径就有了 所以我是没有配置  如果在集成中发现路径错误的 可以自己手动重新配置下  



RN模块

上面原生的很简单不过唯一遗憾的是 他们没有RN的 但是我们项目开始的时候使用的是RN 的 除了极少使用原生的  其他的都是用RN  写的跨平台的代码  所以 只能自己动手写了  RN 与原生之间通信 参考RN中文档的 教程 在原生和React Native间通信。

下面是个人写的一个demo  本人也是新手 写的不是很好 仅供参考:

开发环境及工具

webstorm

xcode 8.3


iOS RN 通联支付_第2张图片
webstorm-eap


iOS RN 通联支付_第3张图片
开发时的各个版本信息

下面是给RN 调用的代码  和原生相识  只是在申明function的时候  需要将function 导出以供RN 调用 代码中的使用的回调 是使用了 通知的形式  没有使用 promise 等异步  因为通联的支付异步回调 是通过代理的形式 所以使用的是通知  


iOS RN 通联支付_第4张图片
桥接

下面就是在RN 中调用了  由于使用通知的形式  所以在RN 中也需要引入通知的一些相关文件

在import 中 添加 NativeEventEmitter  


iOS RN 通联支付_第5张图片
头文件导入



声明

下面就可以开始使用了


iOS RN 通联支付_第6张图片
RN 调用

没多少内容  RN 的使用也是基于原生的代码  如果有什么不对的地方 大家一起学习

也请大家多多指教

最后是OC 的文件 GitHub 地址 :Demo地址

你可能感兴趣的:(iOS RN 通联支付)