summaryrefslogtreecommitdiff
path: root/platform/darwin/src/MGLAccountManager.m
diff options
context:
space:
mode:
authorFredrik Karlsson <bjorn.fredrik.karlsson@gmail.com>2019-06-10 15:08:00 +0200
committerFredrik Karlsson <bjorn.fredrik.karlsson@gmail.com>2019-06-11 18:35:07 +0200
commitad1b448da5079e38db8b6bb8eb565677b0f6a225 (patch)
treed7ecc118aae9524cc417b241c660c2609d37900d /platform/darwin/src/MGLAccountManager.m
parent685a9e5e94627e9ffc914b2955533c6ceeb62644 (diff)
downloadqtlocation-mapboxgl-ad1b448da5079e38db8b6bb8eb565677b0f6a225.tar.gz
[ios] get sku token return value
Diffstat (limited to 'platform/darwin/src/MGLAccountManager.m')
-rw-r--r--platform/darwin/src/MGLAccountManager.m25
1 files changed, 6 insertions, 19 deletions
diff --git a/platform/darwin/src/MGLAccountManager.m b/platform/darwin/src/MGLAccountManager.m
index 48750e1d49..69170459bc 100644
--- a/platform/darwin/src/MGLAccountManager.m
+++ b/platform/darwin/src/MGLAccountManager.m
@@ -18,10 +18,6 @@ static NSString * const MGLAccountManagerExternalMethodName = @"skuToken";
@property (atomic) NSString *accessToken;
@property (nonatomic) NSURL *apiBaseURL;
-#if TARGET_OS_IPHONE || TARGET_OS_SIMULATOR
-@property BOOL useExternalAccountManager;
-#endif
-
@end
@implementation MGLAccountManager
@@ -41,15 +37,6 @@ static NSString * const MGLAccountManagerExternalMethodName = @"skuToken";
if (apiBaseURL.length && [NSURL URLWithString:apiBaseURL]) {
[self setAPIBaseURL:[NSURL URLWithString:apiBaseURL]];
}
-
-#if TARGET_OS_IPHONE || TARGET_OS_SIMULATOR
- // Check if we should use an external accounts library (e.g., provided by navigation)
- id externalAccountsClass = NSClassFromString(MGLAccountManagerExternalClassName);
- SEL externalSKUTokenMethod = NSSelectorFromString(MGLAccountManagerExternalMethodName);
- if (externalAccountsClass != nil && [externalAccountsClass respondsToSelector:externalSKUTokenMethod]) {
- MGLAccountManager.sharedManager.useExternalAccountManager = YES;
- }
-#endif
}
+ (instancetype)sharedManager {
@@ -109,13 +96,13 @@ static NSString * const MGLAccountManagerExternalMethodName = @"skuToken";
#if TARGET_OS_IPHONE || TARGET_OS_SIMULATOR
+ (NSString *)skuToken {
- if (MGLAccountManager.sharedManager.useExternalAccountManager) {
- id externalAccountsClass = NSClassFromString(MGLAccountManagerExternalClassName);
- SEL externalSKUTokenMethod = NSSelectorFromString(MGLAccountManagerExternalMethodName);
- return ((NSString *(*)(id, SEL))[externalAccountsClass methodForSelector:externalSKUTokenMethod])(externalAccountsClass, externalSKUTokenMethod);
- } else {
- return MBXSKUToken.skuToken;
+ Class mbx = NSClassFromString(MGLAccountManagerExternalClassName);
+
+ if ([mbx respondsToSelector:NSSelectorFromString(MGLAccountManagerExternalMethodName)]) {
+ return (NSString *)[mbx valueForKeyPath:MGLAccountManagerExternalMethodName];
}
+
+ return MBXSKUToken.skuToken;
}
#endif