hellbound/Assets/Plugins/iOS/TenjinSDK.h

190 lines
6.4 KiB
C
Raw Permalink Normal View History

2021-11-26 11:16:25 +03:00
//
// TenjinSDK.h
// TenjinSDK
//
// Version 1.12.4
// Copyright (c) 2016 Tenjin. All rights reserved.
//
#import <Foundation/Foundation.h>
#import <StoreKit/StoreKit.h>
@interface TenjinSDK : NSObject
#pragma mark Initialization
- (instancetype)init NS_UNAVAILABLE;
// initialize the Tenjin SDK
+ (TenjinSDK *)init:(NSString *)apiToken __deprecated_msg("use `initialize`");
//initialize the Tenjin SDK with shared secret
+ (TenjinSDK *)init:(NSString *)apiToken
andSharedSecret:(NSString *)secret __deprecated_msg("use `initialize`");
//initialize the Tenjin SDK with app subversion
+ (TenjinSDK *)init:(NSString *)apiToken
andAppSubversion:(NSNumber *)subversion __deprecated_msg("use `initialize`");
//initialize the Tenjin SDK with shared secret and app subversion
+ (TenjinSDK *)init:(NSString *)apiToken
andSharedSecret:(NSString *)secret
andAppSubversion:(NSNumber *)subversion __deprecated_msg("use `initialize`");
// initialize the Tenjin SDK
+ (TenjinSDK *)initialize:(NSString *)apiToken;
//initialize the Tenjin SDK with shared secret
+ (TenjinSDK *)initialize:(NSString *)apiToken
andSharedSecret:(NSString *)secret;
//initialize the Tenjin SDK with app subversion
+ (TenjinSDK *)initialize:(NSString *)apiToken
andAppSubversion:(NSNumber *)subversion;
//initialize the Tenjin SDK with shared secret and app subversion
+ (TenjinSDK *)initialize:(NSString *)apiToken
andSharedSecret:(NSString *)secret
andAppSubversion:(NSNumber *)subversion;
- (id)initWithToken:(NSString *)apiToken
andSharedSecret:(NSString *)secret
andAppSubversion:(NSNumber *)subversion
andDeferredDeeplink:(NSURL *)url
ping:(BOOL)ping NS_DESIGNATED_INITIALIZER;
#pragma mark Singleton access
// initialize the Tenjin SDK
+ (TenjinSDK *)getInstance:(NSString *)apiToken;
//initialize the Tenjin SDK with shared secret
+ (TenjinSDK *)getInstance:(NSString *)apiToken
andSharedSecret:(NSString *)secret;
//initialize the Tenjin SDK with app subversion
+ (TenjinSDK *)getInstance:(NSString *)apiToken
andAppSubversion:(NSNumber *)subversion;
//initialize the Tenjin SDK with shared secret and app subversion
+ (TenjinSDK *)getInstance:(NSString *)apiToken
andSharedSecret:(NSString *)secret
andAppSubversion:(NSNumber *)subversion;
//initialize the Tenjin SDK + connect
+ (TenjinSDK *)sharedInstanceWithToken:(NSString *)apiToken __deprecated_msg("use `init` and `connect`");
//initialize the Tenjin SDK + connect with a third party deeplink
+ (TenjinSDK *)sharedInstanceWithToken:(NSString *)apiToken
andDeferredDeeplink:(NSURL *)url __deprecated_msg("use `init` and `connectWithDeferredDeeplink`");
//returns the shared Tenjin SDK instance
+ (TenjinSDK *)sharedInstance;
#pragma mark - Functionality
//use connect to send connect call. sharedInstanceWithToken automatically does a connect
+ (void)connect;
//use connect to send connect call. sharedInstanceWithToken automatically does a connect
+ (void)connectWithDeferredDeeplink:(NSURL *)url;
//use sendEventWithName for custom event names
+ (void)sendEventWithName:(NSString *)eventName;
//This method checks to make sure integers are passed as values.
+ (void)sendEventWithName:(NSString *)eventName
andEventValue:(NSString *)eventValue;
//This method is deprecated in favor of [transaction: andReceipt:], so Tenjin can verify your transactions
+ (void)transaction:(SKPaymentTransaction *)transaction __attribute__((deprecated));
//Use this method to submit a transaction to Tenjin, we will also attempt to verify it for our records
+ (void)transaction:(SKPaymentTransaction *)transaction
andReceipt:(NSData *)receipt;
//use transactionWithProductName... when you don't use Apple's SKPaymentTransaction and need to pass revenue directly
+ (void)transactionWithProductName:(NSString *)productName
andCurrencyCode:(NSString *)currencyCode
andQuantity:(NSInteger)quantity
andUnitPrice:(NSDecimalNumber *)price;
//use transactionWithProductName...when you don't use Apple's SKPaymentTransaction and need to pass revenue directly with a NSData binary receipt
+ (void)transactionWithProductName:(NSString *)productName
andCurrencyCode:(NSString *)currencyCode
andQuantity:(NSInteger)quantity
andUnitPrice:(NSDecimalNumber *)price
andTransactionId:(NSString *)transactionId
andReceipt:(NSData *)receipt;
//use this method when you want to pass in a base64 receipt instead of a NSData receipt
+ (void)transactionWithProductName:(NSString *)productName
andCurrencyCode:(NSString *)currencyCode
andQuantity:(NSInteger)quantity
andUnitPrice:(NSDecimalNumber *)price
andTransactionId:(NSString *)transactionId
andBase64Receipt:(NSString *)receipt;
//use this method to register the attribution callback
- (void)registerDeepLinkHandler:(void (^)(NSDictionary *params, NSError *error))deeplinkHandler;
//notify Tenjin of a new subscription purchase
- (void)handleSubscriptionPurchase:(SKPaymentTransaction *)transaction;
// GDPR opt-out
+ (void)optOut;
// GDPR opt-in
+ (void)optIn;
// GDPR opt-out of list of params
+ (void)optOutParams:(NSArray *)params;
// GDPR opt-in with list of params
+ (void)optInParams:(NSArray *)params;
// Appends app subversion to app version
+ (void)appendAppSubversion:(NSNumber *)subversion;
// deprecated
+ (void)updateSkAdNetworkConversionValue:(int)conversionValue __deprecated_msg("use `updateConversionValue:`");
// Update conversion value
+ (void)updateConversionValue:(int)conversionValue;
#pragma mark Util
+ (void)verboseLogs;
+ (void)debugLogs;
+ (void)setLogHandler:(void (^)(NSString *))handler;
+ (NSString *)sdkVersion;
+ (void)setWrapperVersion:(NSString *)wrapperVersion;
+ (void)setValue:(NSString *)value
forKey:(NSString *)key;
+ (void)registerAppForAdNetworkAttribution;
+ (void)requestTrackingAuthorizationWithCompletionHandler:(void (^)(NSUInteger status))completion;
@end
//
// Created by Tenjin on 2019-05-17.
// Copyright (c) 2019 Tenjin. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "TenjinSDK.h"
@interface TenjinSDK (MoPubILRD)
+ (void)subscribeMoPubImpressions;
+ (void)mopubImpressionFromJSON:(NSString *)jsonString;
@end