IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> iOS插件开发,集成HBuilder项目接入支付宝登录 -> 正文阅读

[移动开发]iOS插件开发,集成HBuilder项目接入支付宝登录

? ? 接手维护一个老旧的HBuilder项目,这个项目集成了第三方的活体检测和其他的自定义插件,iOS工程呢,使用的DCloud官方给的Demo改造的,由于之前对iOS工程的开发经验为Zero,导入第三方支持库的时候,一股脑儿的把所有的.framework给整进去了,感觉这个项目强(臃)大(肿)到上天入地无所不能了,作为一名开发工程师出身的我,这种习惯很不好,大家不要学我,为了让你们少喷点,我先鄙视自己3秒钟(满满的诚意有木有)。

? ? 接下来呢,我把在接入支付宝登录功能过程中操作在此记录一下,一来梳理一下开发过程,加深印象。二来可以误人子弟,呸,不对,是给大家做一个参考。

一、接入准备

? ? 首先进入支付宝官网注册一个账号,然后我们看一下“接入准备”

创建应用

我们要创建应用并提交审核,审核通过后会生成应用唯一标识 APPID,并且可以申请开通开放产品使用权限。通过 APPID 应用才能调用开放产品的接口能力。

配置应用

应用创建完成后,系统会自动跳转到应用详情页面。您可以在?能力列表?中点击?添加能力?来添加?APP支付宝登录?功能。如下:

(大家要按照需要使用的功能去选择添加,由于上线应用的审核规则愈发严格和规范,不必要的工会给应用上架带来不必要的麻烦。)

开发设置

进入开发设置中完成接口加签方式、IP白名单、应用网关、接口内容加密方式开发信息设置。(官网这些比较详细,就不配图一一赘述了。)

后面还有“上线应用”、“签约”的操作,这些填材料提交审核就行了,审核时间官方说是一天或者好几天不等,你试着放空自己几分钟,然后刷新一下网页试试,会有奇迹出现。

集成并配置 SDK

这一部分是在后台处理,这边就先不介绍了,后期有机会再说吧。。

二、极简版SDK调用

1.前提准备和调用流程的图有助于理解登录的业务,可以看一看,这里不啰嗦了。

2.安卓和iOS在官网提供的链接中,把集成的SDK和Demo下载一下。

3.iOS集成:

? ?3.1 ?首先 在 Build Phases 选项卡的 Link Binary With Libraries 中,增加以下依赖:AFServiceSDK;

?3.2 其次 我们在在实现文件(.m)增加头文件引用:import <AFServiceSDK/AFServiceSDK.h>

这里有个坑啊,3.2就是我在引入的时候,XCode会说 not found这个文件,可是我明明就导入了啊!明明就……明明就……他比较温柔,也许他能给你更多~啊,对不起,想唱歌了。XCode这个导入的时候,我只是引用了这个库,But,not only this,but also把这个库(AFServiceSDK.framework)拖入到工程里来就可以了。

?3.3 接下来“具体业务调用”和“业务结果处理”是sdk里的.h文件,分别是说明如何传参调用和回调的,不用管。

?3.4?服务调用

- ( void )demoAuth { NSDictionary *params = @{kAFServiceOptionBizParams: @{ @"url" : @"https://authweb.alipay.com/auth?auth_type=PURE_OAUTH_SDK&app_id=2016051801417322&scope=auth_user&state=xxx" }, kAFServiceOptionCallbackScheme: @"apsdkdemo" , };

[AFServiceCenter callService:AFServiceEInvoice withParams:params andCompletion:^(AFServiceResponse *response) { NSLog ( @"%@" , response.result); }]; }

demoAuth:这个方法是在HBuilder项目中定义方法,XCode工程中二者需要一致。

appid:就是创建应用通过审核后生成的,替换一下就可以了;

kAFServiceOptionCallbackScheme:这个是跳转到支付宝授权后原来回调到我们应用的,可以自己定义然后替换“apsdkdemo”;

值得注意的是scope=auth_user这个字段在参数说明里,auth_user是获取用户信息,网站支付宝登录的,auth_base是为用户基础授权;

AFServiceEInvoice:这个参数代表是跳转的电子发票账户页面,如果要调整授权登录需替换为AFServiceAuth

3.5 回调URL处理

将官网中两个方法copy到AppDelegate.m文件中

?到这里,应用授权登录后跳转基本结束了。

然后运行一下,XCode项目报了一个关于AFServiceSDK的错误,大概是这个工具里类方法重复了,后来查看了导入的sdk列表,发现工程里有个AlipaySDK.framework,已经包含了AFServiceSDK的功能,然后二者冲突了,在去除了AFServiceSDK以后在.m文件中把引入的<AFServiceSDK/AFServiceSDK.h>改为<AlipaySDK/AlipaySDK.h>即可。

最后的最后还要在feature.plist文件里配置一下

?1是HBuilder项目中定义调用iOS的js文件名称,2是xCode项目中被调用授权登录方法的实现类文件名称;

嗯,到这里就真的结束了,让我们明年再见~👋 难忘今宵,难忘今宵~无论天涯与海角~~

?

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-08-14 14:11:29  更:2021-08-14 14:12:33 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 2:03:05-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码