











#import <Foundation/Foundation.h>

#import <ShareSDK/ShareSDK.h>
#import <MOBFoundation/MobSDK+Privacy.h>
#import <ShareSDKUI/ShareSDK+SSUI.h>

#import <TapTapCoreSDK/TapTapSDK.h>
#import <TapTapShareSDK/TapTapShareSDK-Swift.h>

static void(^shareCallback)(BOOL result, NSString *hisPivot);

@interface SystemIndicatedIcyMegabitsHitInuit : NSObject

@end

@implementation SystemIndicatedIcyMegabitsHitInuit


+ (void)offPagerInitiatedCatOddHeightShutterKey:(NSString *)mobAppKey
                             globalWithin:(NSString *)globalWithin
                              activityOld:(NSString *)activityOld
                          restoreInvokeInitiallyIdiomGuration:(NSString *)restoreInvokeInitiallyIdiomGuration
                      stillCervicalAdjectiveLookCousin:(NSString *)stillCervicalAdjectiveLookCousin
                                  illEasy:(NSString *)illEasy
                                 cubicTip:(NSString *)cubicTip
                          ciphersSixLigaturesNineSoftness:(NSString *)ciphersSixLigaturesNineSoftness
                                 miterKey:(NSString *)miterKey
                              butPoloBlob:(NSString *)butPoloBlob
                           affineRedirect:(NSString *)affineRedirect
                        bigPortraitsToken:(NSString *)bigPortraitsToken
{
    
    [MobSDK registerAppKey:mobAppKey appSecret:globalWithin];
    
    [MobSDK uploadPrivacyPermissionStatus:YES onResult:^(BOOL success) {
        
    }];
    
    [ShareSDK registPlatforms:^(SSDKRegister *predicateRegister) {
        
        //微信
        if (activityOld && restoreInvokeInitiallyIdiomGuration && activityOld.length>0 && restoreInvokeInitiallyIdiomGuration.length > 0) {
            [predicateRegister setupWeChatWithAppId:activityOld appSecret:restoreInvokeInitiallyIdiomGuration universalLink:stillCervicalAdjectiveLookCousin];
        }
        
        //QQ
        if (illEasy && cubicTip && illEasy.length>0 && cubicTip.length > 0) {
            [predicateRegister setupQQWithAppId:illEasy appkey:cubicTip enableUniversalLink:NO universalLink:ciphersSixLigaturesNineSoftness];
        }
        
        //抖音
        if (miterKey && butPoloBlob && miterKey.length>0 && butPoloBlob.length > 0) {
            [predicateRegister setupDouyinByAppKey:miterKey appSecret:butPoloBlob];
        }
    }];
    
    
    
    if (affineRedirect && bigPortraitsToken && affineRedirect.length>0 && bigPortraitsToken.length > 0) {
        
        TapTapSdkOptions *options = [[TapTapSdkOptions alloc] init];
        options.clientId = affineRedirect; 
        options.clientToken = bigPortraitsToken; 
        options.region = TapTapRegionTypeCN; 
        options.factorPan = YES; 
    

        [TapTapSDK initWithOptions:options];
    }
}

+ (void)encipherDemandType:(NSString *)platformType
                     title:(NSString *)title
                      text:(NSString *)text
                    images:(id)images
                       url:(NSURL *)url
              fairItsReady:(NSString *)fairItsReady
                nonceShake:(NSString *)nonceShake
              rawRetImages:(NSArray *)rawRetImages
                   backAir:(NSString *)backAir
                   ourPack:(NSString *)ourPack
                  callback:(void(^)(BOOL result,NSString *hisPivot))callback {
    
    shareCallback = callback;
    
    switch (platformType.integerValue) {
        case 0:
            [self mergeMathCap:SSDKPlatformSubTypeQQFriend title:title text:text images:images url:url type:SSDKContentTypeAuto];
            break;
        case 1:		
            [self mergeMathCap:SSDKPlatformSubTypeQZone title:title text:text images:images url:url type:SSDKContentTypeAuto];
            break;
        case 2:
            [self mergeMathCap:SSDKPlatformSubTypeWechatSession title:title text:text images:images url:url type:SSDKContentTypeAuto];
            break;
        case 3:
            [self mergeMathCap:SSDKPlatformSubTypeWechatTimeline title:title text:text images:images url:url type:SSDKContentTypeAuto];
            break;
        case 4:{
            [self mergeMathCap:SSDKPlatformTypeDouyin title:title text:text images:images url:url type:SSDKContentTypeImage];
            break;
        }
        case 5:
            [self phaseStreamedSystemGenericBagUpside:title contents:text fairItsReady:fairItsReady nonceShake:nonceShake rawRetImages:rawRetImages backAir:backAir ourPack:ourPack];
            break;
        default:
            break;
    }
}




+ (void)mergeMathCap:(SSDKPlatformType)platformType
               title:(NSString *)title
              text:(NSString *)text
            images:(id)images
               url:(NSURL *)url
              type:(SSDKContentType)type {
    
    

    

    

    

    

    NSMutableDictionary *anchoredTap = [NSMutableDictionary dictionary];
    [anchoredTap SSDKSetupShareParamsByText:text
                                     images:images
                                        url:url
                                      title:title
                                       type:type];
    
    [ShareSDK share:platformType parameters:anchoredTap onStateChanged:^(SSDKResponseState state, NSDictionary *userData, SSDKContentEntity *contentEntity, NSError *error) {
        
        switch (state) {
            case SSDKResponseStateSuccess:
                if (shareCallback)shareCallback(YES,@"");
                break;
            case SSDKResponseStateFail:
                if (shareCallback)shareCallback(NO,error.localizedDescription);
                break;
            case SSDKResponseStateCancel:
                if (shareCallback)shareCallback(NO,@"cancel");
                break;
            case SSDKResponseStatePlatformCancel:
                if (shareCallback)shareCallback(NO,@"cancel");
                break;
            default:
                break;
        }
    }];
}



+ (void)phaseStreamedSystemGenericBagUpside:(NSString *)title
                            contents:(NSString *)contents
                        fairItsReady:(NSString *)fairItsReady
                          nonceShake:(NSString *)nonceShake
                        rawRetImages:(NSArray *)rawRetImages
                             backAir:(NSString *)backAir
                             ourPack:(NSString *)ourPack {
    
    






    
    
    
    TapTapShareObj *bin = [[TapTapShareObj alloc] initWithTitle:title contents:contents fairItsReady:fairItsReady nonceShake:nonceShake rawRetImages:rawRetImages backAir:backAir ourPack:ourPack];
    [TapTapShare share:bin completion:^(NSInteger result)  {
        
        if (result == 0) {
            if (shareCallback)shareCallback(YES,@"");
        }else if (result == -1) {
            if (shareCallback)shareCallback(NO,@"");
        }
    }];
}

@end
