原生插件开发--友盟一键登录(UMVerify)
友盟SDK准备
下载UMVerify SDK
手工集成友盟SDK,打开友盟官网,选择开发者中心-SDK

进去之后选择端—选择平台—选择产品服务进行集成


将SDK 导入项目
下载之后
.framework导入到主工程里面。
.bundle导入到主项目下的Bundles文件夹下面。
这里需要注意,所有的第三方的.bundle文件都需要放在这里。要不然引用不进来。
第一步:下载SDK

第二步 :导入主工程的framework里面

第三步:bundle导入到主工程特定的文件夹里面。

友盟SDK的配置按照官方文档即可。
遇到的问题
如果在插件工程里面出现下面的问题,可以按照下面的步骤参考解决方案。
1、问题:插件工程引用友盟头文件报错,提示找不到该文件。 解决:将下载下来的友盟头文件,全部拷贝到插件工程文件下面,然后将其路径放在targets—search paths—framework search paths 里面。如图


这样在编译运行就可以使用友盟头文件了。
代码调用
iOS端代码
新建一个YMModule文件,继承DCUniModule。在YMModule.h文件里面引入插件、友盟需要的头文件。如下图

第一个头文件是插件开发需要继承的,必写
第二个是友盟需要引用的头文件,必写
第三个是用于友盟第三方分享。
框起来的三个是友盟一键登录需要的头文件。
第一个是一键登录SDK头文件,必填
第二个是友盟一键登录页面样式的重写。(根据实际情况引用)
第三个是风火轮。(根据实际情况引用)
.m文件
@implementation YMModule
// 友盟 一键登录。宏定义用于uniapp调用
UNI_EXPORT_METHOD(@selector(UmLoginVerify:callback:))
#pragma mark - 一键登录 js调用的方法
- (void)UmLoginVerify:(NSDictionary *)options callback:(UniModuleKeepAliveCallback)callback
{
// options 为 js 端调用此方法时传递的参数
// 第一个参数为回传给js端的数据,第二个参数为标识,表示该回调方法是否支持多次调用,如果原生端需要多次回调js端则第二个参数传 YES;
float timeout = 5.0;
__weak typeof(self) weakSelf = self;
[ProgressHUD show:@"请稍等..." Interaction:YES];
// 初始化友盟相关配置
[UMConfigure initWithAppkey:[options objectForKey:@"UMAppkey"] channel:@"App Store"];
// 设置密钥
NSString*info = [NSString stringWithFormat:@"%@",[options objectForKey:@"VerifySDKInfo"]];
//设置SDK参数,app生命周期内调用一次即可
[UMCommonHandler setVerifySDKInfo:info complete:^(NSDictionary*_Nonnull resultDic){
NSLog(@"VerifySDKInf=%@",resultDic);
}];
// 检测当前环境是否支持一键登录,支不支持提前知道 (UMPNSAuthTypeLoginToken 检查一键登录环境 UMPNSAuthTypeVerifyToken 检查号码认证环境)
__block BOOL support = YES;
[UMCommonHandler checkEnvAvailableWithAuthType:UMPNSAuthTypeLoginToken complete:^(NSDictionary*_Nullable resultDic){
support =[PNSCodeSuccess isEqualToString:[resultDic objectForKey:@"resultCode"]];
}];
//是否有sim卡
if ([UMCommonUtils simSupportedIsOK]){
[UMCommonHandler accelerateLoginPageWithTimeout:timeout complete:^(NSDictionary * _Nonnull resultDic) {
if

本文详细介绍了如何在iOS原生插件中集成友盟SDK,实现一键登录功能。从下载SDK、导入项目、配置搜索路径,到解决引用头文件问题,再到代码调用和登录成功后的数据处理,每个步骤都有清晰的说明。同时,文中还展示了uniapp端如何调用这个原生插件,并提供了本地运行和调试的注意事项。
最低0.47元/天 解锁文章
3908

被折叠的 条评论
为什么被折叠?



