美文网首页
iOS极光分享集成图文教程--(2020最新版)

iOS极光分享集成图文教程--(2020最新版)

作者: iOS开发工程师周玉的博客 | 来源:发表于2020-01-16 22:52 被阅读0次

    iOS极光分享集成图文教程

    1. 极光官网 iOS SDK 集成指南

    极光官网 iOS SDK 集成指南

    在这里插入图片描述

    2. Xcode创建项目, 获取Bundle Identifier

    在这里插入图片描述
    在这里插入图片描述

    3. 极光平台应用管理创建应用, 申请appkey

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FXQdocYF-1579180582641)(media/15790565593493/15790568794494.jpg)] 在这里插入图片描述

    4. Xcode工程,pod导入库, noidfa版本即可

    然后执行pod install安装即可

    在这里插入图片描述
    在这里插入图片描述

    5. 创建极光分享管理类JShareManage处理

    切记, 正式环境, 一定要在各类第三方平台申请对应的key和sercet, 否者测试时有可能分享失败, 或者分享无回调

    在这里插入图片描述
    在这里插入图片描述
    #import <Foundation/Foundation.h>
    
    NS_ASSUME_NONNULL_BEGIN
    
    @interface JShareManage : NSObject
    
    + (instancetype)sharedInstance;
    
    - (void)config;
    
    - (BOOL)openURL:(NSURL *)url;
    
    @end
    
    NS_ASSUME_NONNULL_END
    
    在这里插入图片描述
    #import "JShareManage.h"
    #import "JSHAREService.h"
    
    #define JSAPPKEY @"d2466d31643bd7473556b2c0"
    #define JSSinaWeiboAppKey @"1736881686"
    #define JSSinaWeiboAppSecret @"76d9a5f1fbb8917904a11bc31df7cf7c"
    #define JSSinaRedirectUri @"https://www.jiguang.cn"
    #define JSQQAppId @"1105864531"
    #define JSQQAppKey @"glFYjkHQGSOCJHMC"
    #define JSWeChatAppId @"wxc40e16f3ba6ebabc"
    #define JSWeChatAppSecret @"dcad950cd0633a27e353477c4ec12e7a"
    
    @implementation JShareManage  
    
    + (instancetype)sharedInstance {
        static JShareManage *instance;
        static dispatch_once_t onceToken;
        dispatch_once(&onceToken, ^{
            instance = [[JShareManage alloc] init];
        });
        return instance;
    }
    
    - (void)config {
        JSHARELaunchConfig *config = [[JSHARELaunchConfig alloc] init];
        config.appKey = JSAPPKEY;
        config.SinaWeiboAppKey = JSSinaWeiboAppKey;
        config.SinaWeiboAppSecret = JSSinaWeiboAppSecret;
        config.SinaRedirectUri = JSSinaRedirectUri;
        config.QQAppId = JSQQAppId;
        config.QQAppKey = JSQQAppKey;
        config.WeChatAppId = JSWeChatAppId;
        config.WeChatAppSecret = JSWeChatAppSecret;
        config.isSupportWebSina = YES;
        [JSHAREService setupWithConfig:config];
        [JSHAREService setDebug:YES];
    }
    
    - (BOOL)openURL:(NSURL *)url {
        return [JSHAREService handleOpenUrl:url];
    }
    
    @end
    

    6. Appdelegate处理

    引入JShareManage.h

    在这里插入图片描述
    回调处理
    在这里插入图片描述

    7. ATS网络请求设置

    info.plist文件, 点击+增加App Transport Security Settings对应类型为Dictionary, 下面增加Allow Arbitrary Loads对应类型为Boolean, 值为YES

    在这里插入图片描述
    在这里插入图片描述

    8. 隐私设置, 因为可能涉及到图片和音频分享, 无需求可以不设置

    在这里插入图片描述

    9. 白名单添加, 用于分享时, app之间跳转

    plist文件添加LSApplicationQueriesSchemes对应类型为Array, 然后添加对应分享支持类型即可, 国内一般选择QQ, 微信和微博

    在这里插入图片描述

    10. URL Types, 用于分享后返回当前App

    info里的URL Types中点击+添加即可

    在这里插入图片描述

    11. 将demo的UI资源拖过来, 界面没有显示问题IBOutlet的XIB问题

    在这里插入图片描述
    在这里插入图片描述

    运行编译demo, 会发现界面空白, 没有任何东西, 因为demo中的ViewController中的tableView是XIB形式连线过来的, 拖入工程后, 没有对应的XIB了, 所以去掉XIB关联, 纯代码创建

    在这里插入图片描述
    在这里插入图片描述
    #pragma mark - UI
    - (void)configUI {
        [self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
            make.top.left.right.mas_equalTo(0);
            make.bottom.mas_equalTo(-kTabbarSafeBottomMargin);
        }];
    }
    
    #pragma mark - getters
    - (UITableView *)tableView {
        if (!_tableView) {
            _tableView = [[UITableView alloc] init];
            _tableView.backgroundColor = [UIColor whiteColor];
            _tableView.delegate = self;
            _tableView.dataSource = self;
            _tableView.tableFooterView = [UIView new];
            _tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
            _tableView.rowHeight = UITableViewAutomaticDimension;
            _tableView.estimatedRowHeight = 100;
            _tableView.showsVerticalScrollIndicator = NO;
            _tableView.showsHorizontalScrollIndicator = NO;
            [_tableView registerClass:UITableViewCell.class forCellReuseIdentifier:NSStringFromClass(UITableViewCell.class)];
            [self.view addSubview:_tableView];
        }
        return _tableView;
    }
    

    运行效果图


    在这里插入图片描述

    12.测试分享到QQ

    分享文本到QQ

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    分享成功 在这里插入图片描述

    13. 自此, iOS极光分享集成大功告成

    如有集成式遇到的问题, 请联系本人QQ: 1512450002

    相关文章

      网友评论

          本文标题:iOS极光分享集成图文教程--(2020最新版)

          本文链接:https://www.haomeiwen.com/subject/xuvqzctx.html