-
Notifications
You must be signed in to change notification settings - Fork 779
/
AppDelegate.m
76 lines (60 loc) · 2.55 KB
/
AppDelegate.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
/*! @file AppDelegate.m
@brief AppAuth iOS SDK Example
@copyright
Copyright 2015 Google Inc. All Rights Reserved.
@copydetails
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#import "AppDelegate.h"
#import "AppAuth.h"
#import "AppAuthExampleViewController.h"
@interface AppDelegate ()
@end
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
UIWindow *window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
UIViewController *mainViewController =
[[AppAuthExampleViewController alloc] initWithNibName:nil bundle:nil];
window.rootViewController = mainViewController;
_window = window;
[_window makeKeyAndVisible];
return YES;
}
/*! @brief Handles inbound URLs. Checks if the URL matches the redirect URI for a pending
AppAuth authorization request.
*/
- (BOOL)application:(UIApplication *)app
openURL:(NSURL *)url
options:(NSDictionary<NSString *, id> *)options {
// Sends the URL to the current authorization flow (if any) which will process it if it relates to
// an authorization response.
if ([_currentAuthorizationFlow resumeExternalUserAgentFlowWithURL:url]) {
_currentAuthorizationFlow = nil;
return YES;
}
// Your additional URL handling (if any) goes here.
return NO;
}
/*! @brief Forwards inbound URLs for iOS 8.x and below to @c application:openURL:options:.
@discussion When you drop support for versions of iOS earlier than 9.0, you can delete this
method. NB. this implementation doesn't forward the sourceApplication or annotations. If you
need these, then you may want @c application:openURL:options to call this method instead.
*/
- (BOOL)application:(UIApplication *)application
openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation {
return [self application:application
openURL:url
options:@{}];
}
@end