sdk.h 3.59 KB
//
//  sdk.h
//
//



typedef enum {
    JX_RequestFailed,
    JX_LoginResult ,
    JX_RegisterResult,
    JX_ConversionResult
}resultType;

typedef void(^UpdatePayInfo)(NSString *result);
typedef void(^GetPayResultOrderT)(NSString *payOrder);
typedef void(^GetResultOfQuickRegisterT)(NSString *quickRegisterResult);
typedef void(^GetResultOfVisitorLoginResultT)(NSString *visitorLoginResult);

//支付方式回调
typedef void(^WayResult)(NSString *wayStr);

typedef void(^MPayOrder)(NSString *resultInfo);



#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

@protocol JXResultDelegate <NSObject>
//登录
- (void)addObserver:(id)info loginResult:(resultType)loginResult;
//注册
- (void)addObserver:(id)info registerResult:(resultType)registerResult;
//转化正式账号
- (void)addObserver:(id)info conversionResult:(resultType)conversionResult;
//游客是否为第一次登陆
- (void)visitorIsFirstLogin:(BOOL)firstLogin;
@end
@interface sdk : NSObject

+(sdk*)shareInstance;

@property(nonatomic,assign)id<JXResultDelegate> myDelegate;

//初始化接口
//初始化接口
- (void)initWithChannelId:(NSString *)channelId gamegsKey:(NSString *)key platName:(NSString *)plat gameInfo:(NSString *)gameName application:(UIApplication *)application WithOptions:(NSDictionary *)launchOptions markert:(NSString *)markerName;

//登录界面
- (void)login:(UIViewController *)vctrl;

//登录成功提示
- (void)loginSuccessView:(UIViewController *)vctrl userName:(NSString *)name userStatus:(NSString *)userStatus;

//设置是否自动登录
- (void)setAutomaticLogin:(BOOL)isLogin;

//退出登录
- (void)logout:(UIViewController *)vc;

//登录后调用  可获取玩家的身份:游客'visitor' or 正式用户'user'
- (NSString *)isVisitorOrUser;

//游客进入
- (void)visitorUserLogin:(GetResultOfVisitorLoginResultT)visitorResult;

//临时转正式
- (void)userConversion:(UIViewController *)viewCtrl;

//用户中心
- (void)userCenter:(UIViewController *)viewCtrl;

//用户反馈
- (void)userAdviceFeedback:(UIViewController *)viewCtrl;

//用户设备信息
- (NSDictionary *)userDeviceMessage;

//提交用户设备信息
- (void)sendUserInfo;




//请求支付方式
-(void)pay:(WayResult)way;





//支付中心
- (void)payViewGameName:(NSString *)gameName
             goodsTitle:(NSString *)goodsTitle
              priceText:(NSString *)price
                 number:(NSString *)number
     productDescription:(NSString *)productDescription
            gameOrderId:(NSString *)gameOrderId
               userInfo:(NSString *)userInfo
           cpDefineInfo:(NSString *)cpInfo
              urlScheme:(NSString *)scheme
         ViewController:(UIViewController *)viewCtrl;




//IAP购买
/*
 productID:产品ID
 priceText:价格
 gameOrderId:支付订单号
 userInfo:用户详情,游戏客户端传入
 cpInfo:cp可传入数据
 payResult:block形式,返回支付结果
 viewController:传入的控制器(游戏传入 [[UIApplication sharedApplication]keyWindow].rootViewController即可)
 */
- (void)jxIapWithProductId:(NSString *)productID
                     price:(NSString *)price
               gameOrderId:(NSString *)gameOrderId
            userInfoString:(NSString *)userInfo
                    cpInfo:(NSString *)cpInfo
                  payOrder:(GetPayResultOrderT )order
            viewController:(UIViewController *)vc;

//恢复购买(有一次性购买的产品时需创建“恢复购买”按钮调用)
- (void)jxRestorePurchasedProduction;


//IAP支付结果回调
- (void)jxUpdatePayResult:(UpdatePayInfo)payInfoBlock;


- (void)jXapplicationWillEnterForeground:(UIApplication *)application;


@end