Skip to content

Commit fde50f4

Browse files
authored
Prevent strong match controller crash DEVEX-515 (#844)
* Added checks for invalid URLs. * Updated all projects to Xcode 9.4.1 for testing.
1 parent 2e1be32 commit fde50f4

File tree

11 files changed

+191
-37
lines changed

11 files changed

+191
-37
lines changed

Branch-SDK/Branch-SDK/BNCStrongMatchHelper.m

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -148,8 +148,11 @@ + (NSURL *)getUrlForCookieBasedMatchingWithBranchKey:(NSString *)branchKey
148148
NSString *appDomainLinkURL;
149149
id ret = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"branch_app_domain"];
150150
if (ret) {
151-
if ([ret isKindOfClass:[NSString class]])
152-
appDomainLinkURL = [NSString stringWithFormat:@"https://%@", ret];
151+
if ([ret isKindOfClass:[NSString class]]) {
152+
appDomainLinkURL = ret;
153+
if (!([appDomainLinkURL hasPrefix:@"https:"] || [appDomainLinkURL hasPrefix:@"http:"]))
154+
appDomainLinkURL = [NSString stringWithFormat:@"https://%@", ret];
155+
}
153156
} else {
154157
appDomainLinkURL = BNC_LINK_URL;
155158
}
@@ -262,6 +265,8 @@ - (BOOL) subclass:(Class)subclass selector:(SEL)selector {
262265

263266
- (BOOL) willLoadViewControllerWithURL:(NSURL*)matchURL {
264267
if (self.primaryWindow) return NO;
268+
if (!([matchURL.scheme isEqualToString:@"https"] || [matchURL.scheme isEqualToString:@"http"]))
269+
return NO;
265270

266271
// Dynamically subclass the SFSafariViewController if available.
267272
// This allows us to compile and link to an app that doesn't
@@ -296,7 +301,13 @@ - (BOOL) willLoadViewControllerWithURL:(NSURL*)matchURL {
296301
BNCLogDebugSDK(@"Safari is initializing.");
297302
self.primaryWindow = [UIViewController bnc_currentWindow];
298303

299-
self.matchViewController = [[BNCMatchViewControllerSubclass alloc] initWithURL:matchURL];
304+
@try {
305+
self.matchViewController = [[BNCMatchViewControllerSubclass alloc] initWithURL:matchURL];
306+
}
307+
@catch (id e) {
308+
BNCLogError(@"Can't create BNCMatchViewController with URL '%@': %@.", matchURL, e);
309+
self.matchViewController = nil;
310+
}
300311
if (!self.matchViewController) return NO;
301312

302313
self.matchViewController.delegate = self;

Branch-TestBed-Swift/TestBed-Swift.xcodeproj/project.pbxproj

Lines changed: 121 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -691,6 +691,7 @@
691691
"${PODS_ROOT}/Amplitude-iOS/Amplitude/ComodoCaLimitedRsaCertificationAuthority.der",
692692
"${PODS_ROOT}/Amplitude-iOS/Amplitude/ComodoRsaCA.der",
693693
"${PODS_ROOT}/Amplitude-iOS/Amplitude/ComodoRsaDomainValidationCA.der",
694+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyKit/Appboy.bundle",
694695
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedbackViewController/Feedback_Resources/ABKModalFeedbackViewController.xib",
695696
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedbackViewController/Feedback_Resources/ABKNavigationFeedbackViewController.xib",
696697
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedbackViewController/Feedback_Resources/ar.lproj/AppboyFeedbackLocalizable.strings",
@@ -780,7 +781,101 @@
780781
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/InAppMessage/Resources/[email protected]",
781782
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/InAppMessage/Resources/FontAwesome.otf",
782783
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/InAppMessage/Resources/SlideupArrow.png",
783-
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyKit/Appboy.bundle",
784+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/ABKNewsFeedCardStoryboard.storyboard",
785+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/ar.lproj/AppboyFeedLocalizable.strings",
786+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/Base.lproj/AppboyFeedLocalizable.strings",
787+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/da.lproj/AppboyFeedLocalizable.strings",
788+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/de.lproj/AppboyFeedLocalizable.strings",
789+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/en.lproj/AppboyFeedLocalizable.strings",
790+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/es-419.lproj/AppboyFeedLocalizable.strings",
791+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/es-MX.lproj/AppboyFeedLocalizable.strings",
792+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/es.lproj/AppboyFeedLocalizable.strings",
793+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/et.lproj/AppboyFeedLocalizable.strings",
794+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/fi.lproj/AppboyFeedLocalizable.strings",
795+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/fil.lproj/AppboyFeedLocalizable.strings",
796+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/fr.lproj/AppboyFeedLocalizable.strings",
797+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/he.lproj/AppboyFeedLocalizable.strings",
798+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/hi.lproj/AppboyFeedLocalizable.strings",
799+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/id.lproj/AppboyFeedLocalizable.strings",
800+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/btn-app-purchase-disabled.png",
801+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/[email protected]",
802+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/btn-app-purchase-highlighted.png",
803+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/[email protected]",
804+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/btn-app-purchase-normal.png",
805+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/[email protected]",
806+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/Icons_Read.png",
807+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/[email protected]",
808+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/Icons_Unread.png",
809+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/[email protected]",
810+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/img-noimage-lrg.png",
811+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/[email protected]",
812+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/img-noimage-sm.png",
813+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/[email protected]",
814+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/img-recommended-tab.png",
815+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/[email protected]",
816+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/img-star-empty.png",
817+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/[email protected]",
818+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/img-star-filled.png",
819+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/[email protected]",
820+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/img-star-half.png",
821+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/images/[email protected]",
822+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/it.lproj/AppboyFeedLocalizable.strings",
823+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/ja.lproj/AppboyFeedLocalizable.strings",
824+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/km.lproj/AppboyFeedLocalizable.strings",
825+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/ko.lproj/AppboyFeedLocalizable.strings",
826+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/lo.lproj/AppboyFeedLocalizable.strings",
827+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/ms.lproj/AppboyFeedLocalizable.strings",
828+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/my.lproj/AppboyFeedLocalizable.strings",
829+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/nb.lproj/AppboyFeedLocalizable.strings",
830+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/nl.lproj/AppboyFeedLocalizable.strings",
831+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/pl.lproj/AppboyFeedLocalizable.strings",
832+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/pt-PT.lproj/AppboyFeedLocalizable.strings",
833+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/pt.lproj/AppboyFeedLocalizable.strings",
834+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/ru.lproj/AppboyFeedLocalizable.strings",
835+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/sv.lproj/AppboyFeedLocalizable.strings",
836+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/th.lproj/AppboyFeedLocalizable.strings",
837+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/vi.lproj/AppboyFeedLocalizable.strings",
838+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/zh-Hans.lproj/AppboyFeedLocalizable.strings",
839+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/zh-Hant.lproj/AppboyFeedLocalizable.strings",
840+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/zh-HK.lproj/AppboyFeedLocalizable.strings",
841+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/zh-TW.lproj/AppboyFeedLocalizable.strings",
842+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/zh.lproj/AppboyFeedLocalizable.strings",
843+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/ar.lproj",
844+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/Base.lproj",
845+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/da.lproj",
846+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/de.lproj",
847+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/en.lproj",
848+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/es-419.lproj",
849+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/es-MX.lproj",
850+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/es.lproj",
851+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/et.lproj",
852+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/fi.lproj",
853+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/fil.lproj",
854+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/fr.lproj",
855+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/he.lproj",
856+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/hi.lproj",
857+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/id.lproj",
858+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/it.lproj",
859+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/ja.lproj",
860+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/km.lproj",
861+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/ko.lproj",
862+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/lo.lproj",
863+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/ms.lproj",
864+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/my.lproj",
865+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/nb.lproj",
866+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/nl.lproj",
867+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/pl.lproj",
868+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/pt-PT.lproj",
869+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/pt.lproj",
870+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/ru.lproj",
871+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/sv.lproj",
872+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/th.lproj",
873+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/vi.lproj",
874+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/zh-Hans.lproj",
875+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/zh-Hant.lproj",
876+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/zh-HK.lproj",
877+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/zh-TW.lproj",
878+
"${PODS_ROOT}/Appboy-iOS-SDK/AppboyUI/ABKFeedViewController/Feed_Resources/zh.lproj",
784879
"${PODS_ROOT}/Mixpanel/Mixpanel/Images/MPArrowLeft.png",
785880
"${PODS_ROOT}/Mixpanel/Mixpanel/Images/[email protected]",
786881
"${PODS_ROOT}/Mixpanel/Mixpanel/Images/MPArrowRight.png",
@@ -805,6 +900,7 @@
805900
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/ComodoCaLimitedRsaCertificationAuthority.der",
806901
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/ComodoRsaCA.der",
807902
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/ComodoRsaDomainValidationCA.der",
903+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Appboy.bundle",
808904
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/ABKModalFeedbackViewController.nib",
809905
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/ABKNavigationFeedbackViewController.nib",
810906
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AppboyFeedbackLocalizable.strings",
@@ -859,7 +955,30 @@
859955
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
860956
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.otf",
861957
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SlideupArrow.png",
862-
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Appboy.bundle",
958+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/ABKNewsFeedCardStoryboard.storyboardc",
959+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AppboyFeedLocalizable.strings",
960+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/btn-app-purchase-disabled.png",
961+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
962+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/btn-app-purchase-highlighted.png",
963+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
964+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/btn-app-purchase-normal.png",
965+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
966+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Icons_Read.png",
967+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
968+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Icons_Unread.png",
969+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
970+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/img-noimage-lrg.png",
971+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
972+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/img-noimage-sm.png",
973+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
974+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/img-recommended-tab.png",
975+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
976+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/img-star-empty.png",
977+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
978+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/img-star-filled.png",
979+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
980+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/img-star-half.png",
981+
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
863982
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MPArrowLeft.png",
864983
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/[email protected]",
865984
"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MPArrowRight.png",

Branch-TestBed-Swift/TestBed-Swift.xcodeproj/xcshareddata/xcschemes/TestBed-Swift.xcscheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "0930"
3+
LastUpgradeVersion = "0940"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"

Branch-TestBed-Swift/TestBed-Swift/AppDelegate.swift

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -626,16 +626,16 @@ class AppDelegate: UIResponder, UIApplicationDelegate, AdjustDelegate, AppsFlyer
626626
}
627627

628628
extension AppDelegate:TuneDelegate {
629-
func tuneDidSucceed(with data: Data!) {
630-
let str = String(data: data, encoding: String.Encoding.utf8)
629+
func tuneDidSucceed(with data: Data?) {
630+
let str = String(data: data!, encoding: String.Encoding.utf8)
631631
print("Tune success: \(String(describing: str))")
632632
}
633633

634-
func tuneDidFailWithError(_ error: Error!) {
635-
print("Tune failed: \(error)")
634+
func tuneDidFailWithError(_ error: Error?) {
635+
print("Tune failed: \(String(describing: error))")
636636
}
637637

638-
func tuneEnqueuedRequest(_ url: String!, postData post: String!) {
639-
print("Tune request enqueued: \(url), post data = \(post)")
638+
func tuneEnqueuedRequest(_ url: String?, postData post: String?) {
639+
print("Tune request enqueued: \(String(describing: url)), post data = \(String(describing: post))")
640640
}
641641
}

0 commit comments

Comments
 (0)