美文网首页
简易版SDK集成

简易版SDK集成

作者: Code_Narrator | 来源:发表于2020-03-03 16:21 被阅读0次

    写在前面

    使用本公司sdk,您的应用可以借助sdk完成用户注册与用户信息管理,本SDK为Object_C语言编写,为了方便审核,目前仅支持手动部署,关于 SDK 的具体使用方法,请仔细阅读下面的文档。

    背景

    开发环境

    确保您的开发及部署环境符合以下标准:

    开发工具:推荐Xcode 11及以上版本

    部署目标:iOS 9.0及以上版本

    SDK版本:官网最新版本

    注册开户

    开发者需要在 国外应用管理后台 上进行注册,并创建应用 记录

    ID及GameKey

    术语介绍

    ID:媒体 ID,是您在国外应用管理后台创建应用时获得的ID,这个ID是我们在网络后台中识别您应用的唯一ID。

    GameKey:应用密钥 用于加密您的应用请求体。


    sdk下载地址    密码:76n5

    demo下载地址   密码:qq3n

    苹果官方文档档案地址

    支持功能

    完整版本

      .自动登录

      .facebook登录

      .facebook分享

      .IAP自动订阅

      .IAP消耗型购买 

      .简体中文、繁体中文、英语、韩语适配

    手动部署

    a 添加依赖库 (主要为facebook依赖)如下图

    FBSDKShareKit.framework

    FBSDKCoreKit.framework

    FBSDKLoginKit.framework

    Bolts.framework

    b.用下面方式打开info.plist

    打开info.plist

    c.在最末尾但是在最后的《/dict》和《/plist》之前添加

    【注:App编号和App名字自己注册成为开发者之后创建一个应用就出现了】

    d. Build  Settings ---> 搜索Other Linker Flags 做如下配置

    infopilst 其他 配置 这里做一个补充 因为很多人是第一次接触xcode 做个基础说明

    配置方法一:

    新增 App Transport Security Settings    --    Dictionary 类型

     Allow Arbitrary Loads   -- Boolean 类型 value 为YES

    配置方法二:

    粘贴代码

    <key>NSAppTransportSecurity</key>

    <key>NSAllowsArbitraryLoads</key>

    重点来了。。。。

    为了过审核,所以sdk接口名字都是瞎写的,不要觉得奇怪,按照文档填写对应值就行


    初始化

    找到AppDelegate.m  文件 

    写入如下代码

    KKKK_SwordManDatas_LLLL.KKKK_shardInstance_LLLL.gameID = @"您创建的游戏ID";

        KKKK_SwordManDatas_LLLL.KKKK_shardInstance_LLLL.gameKey = @"您创建的游戏gamekey";

        KKKK_SwordManDatas_LLLL.KKKK_shardInstance_LLLL.gameVKey = @"1";

        [KKKK_SwordManDatas_LLLL.KKKK_shardInstance_LLLL fb_application:application didFinishLaunchingWithOptions:launchOptions];

        [KKKK_SwordManDatas_LLLL.KKKK_shardInstance_LLLL KKKK_userLogin_LLLL];


    请仔细阅读IAP自动订阅苹果官方文档

    沙盒测试时 您一定要了解的IAP

    验证订阅状态

     [ZYPurchaseManager configurationWithSecretKey:INAPPPRIVATEKEY];

        [[ZYPurchaseManager sharedManager] verifyPurchaseStateWithCompletionHandler:^(PurchaseState purchaseState) {

            if(purchaseState ==PurchaseStatePurchased) {

                       NSLog(@"验证成功");

                   }else{

                        NSLog(@"验证失败");

                   }

        }];

    订阅行为触发

    [[ZYPurchaseManager sharedManager] purchaseProductWithProdName_JJJJ:@"首冲" prodRate:@"7" gmProdID:@"com.nzhydtwz.month" gmOrderID:[NSString stringWithFormat:@"%d",199999+arc4random() % 20000] orderInfo:@"10" roleLevel:@"" completionHandler:^(PurchaseState purchaseState) {

            if(purchaseState ==PurchaseStatePurchased) {

                NSLog(@"购买成功");

            }else{

                 NSLog(@"购买失败");

            }

        }];

    消耗型商品IAP

     设置苹果支付操作结果的回掉接收者 

    -(void)KKKK_makeOrderResult_LLLL:(id)target; 苹果支付回掉, 此回掉只是苹果支付的回掉 

    苹果支付成功

     -(void)createOrderSucceed 苹果支付失败

     -(void)createOrderFailed 

    支付请求 

    -(void)KKKK_makeOrderInfoWithTitle_LLLL:(NSString *)title gameProdID:(NSString *)prodID 

    gameProdRate:(NSString *)prodRate gameServOrderID:(NSString *)servOrderID 

    prodGrade:(NSString *)prodGrade prodInfo:(NSString *)prodInfo; 

    title :商品名称

    prodID :计费点

    prodRate :商品价格(单位是元)servOrderI :游戏方订单号

    prodGrade :角色等级(游戏角色等级,防止苹果复查所以角色等级大于这个值时加上前两 单苹果支付后才会走第三方支付,该值我们会和游戏方商量后确定)prodInfo :透传数据(不可以有中文)6.第三方支付回掉 第三方支付现在是跳出游戏在外部浏览器进行支付方式选择并支付(这样程序里将不会有 webview 相关代码,避免被认为是 h5 支付),所以第三方支付您可以通过用户返回游戏后的 通 知 UIApplicationWillEnterForegroundNotification 或 者 AppleDelegate 中 的 applicationWillEnterForeground 去刷新下用户最新的数据,另外如果是长链接的游戏,第三方 支付可以不需要特意刷新游戏数据,因为服务器支付成功后会通知游戏方客户端。

    facebook部分补充

    facebook 外部支持调用方法(菜单内含有两个此按钮 可以通过后台隐藏 分享内容后台设置)

    //分享

    -(void)KKKK_fbShare_LLLL;

    //邀请

    -(void)KKKK_fbInvitation_LLLL;

    语言适配补充

    GameSDKBundle  拖到工程里即可

    相关文章

      网友评论

          本文标题:简易版SDK集成

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