|
@@ -91,6 +91,10 @@
|
91
|
91
|
return YES;
|
92
|
92
|
}
|
93
|
93
|
|
|
94
|
+ if (![_customUrlScheme isEqualToString:url.scheme]) {
|
|
95
|
+ return NO;
|
|
96
|
+ }
|
|
97
|
+
|
94
|
98
|
return [JitsiMeetView loadURLInViews:@{ @"url" : url.absoluteString }];
|
95
|
99
|
}
|
96
|
100
|
|
|
@@ -118,7 +122,10 @@
|
118
|
122
|
|
119
|
123
|
if ([activityType isEqualToString:NSUserActivityTypeBrowsingWeb]) {
|
120
|
124
|
// App was started by opening a URL in the browser
|
121
|
|
- return @{ @"url" : userActivity.webpageURL.absoluteString };
|
|
125
|
+ NSURL *url = userActivity.webpageURL;
|
|
126
|
+ if ([_universalLinkDomains containsObject:url.host]) {
|
|
127
|
+ return @{ @"url" : url.absoluteString };
|
|
128
|
+ }
|
122
|
129
|
} else if ([activityType isEqualToString:@"INStartAudioCallIntent"]
|
123
|
130
|
|| [activityType isEqualToString:@"INStartVideoCallIntent"]) {
|
124
|
131
|
// App was started by a CallKit Intent
|
|
@@ -152,6 +159,16 @@
|
152
|
159
|
return nil;
|
153
|
160
|
}
|
154
|
161
|
|
|
162
|
+#pragma mark - Property getter / setters
|
|
163
|
+
|
|
164
|
+- (NSString *)customUrlScheme {
|
|
165
|
+ return _customUrlScheme ? _customUrlScheme : @"org.jitsi.meet";
|
|
166
|
+}
|
|
167
|
+
|
|
168
|
+- (NSArray<NSString *> *)universalLinkDomains {
|
|
169
|
+ return _universalLinkDomains ? _universalLinkDomains : @[@"meet.jit.si"];
|
|
170
|
+}
|
|
171
|
+
|
155
|
172
|
#pragma mark - Private API methods
|
156
|
173
|
|
157
|
174
|
- (RCTBridge *)getReactBridge {
|