From 4f7d4c31d07e3b83d99f397c4b65f02cbe40ccfd Mon Sep 17 00:00:00 2001 From: Vandad Nahavandipoor Date: Tue, 23 Jun 2015 12:26:02 +0200 Subject: [PATCH] Updated all code in chapter-notification to Swift 2.0 (Xcode 7) --- .../project.pbxproj | 8 +++++++- .../UserInterfaceState.xcuserstate | Bin 0 -> 14295 bytes ...ring Push Notifications to Your App.xcscheme | 11 ++++++++--- .../AppDelegate.swift | 4 ++-- .../Info.plist | 2 +- .../Info.plist | 2 +- .../project.pbxproj | 10 +++++++++- .../UserInterfaceState.xcuserstate | Bin 0 -> 14085 bytes ...Handling Local System Notifications.xcscheme | 11 ++++++++--- .../AppDelegate.swift | 4 ++-- .../Base.lproj/Main.storyboard | 9 +++++---- .../Info.plist | 2 +- .../ViewController.swift | 2 +- .../Info.plist | 2 +- .../project.pbxproj | 10 +++++++++- .../UserInterfaceState.xcuserstate | Bin 0 -> 13571 bytes ... Reacting to Keyboard Notifications.xcscheme | 11 ++++++++--- .../Info.plist | 2 +- .../Info.plist | 2 +- .../project.pbxproj | 10 +++++++++- .../UserInterfaceState.xcuserstate | Bin 0 -> 14569 bytes ...and Reacting to Local Notifications.xcscheme | 11 ++++++++--- .../AppDelegate.swift | 9 ++------- .../Info.plist | 2 +- .../Info.plist | 2 +- .../project.pbxproj | 10 +++++++++- .../UserInterfaceState.xcuserstate | Bin 0 -> 14376 bytes ...g for and Reacting to Notifications.xcscheme | 11 ++++++++--- .../AppDelegate.swift | 4 ++-- .../Base.lproj/Main.storyboard | 9 +++++---- .../Info.plist | 2 +- .../Info.plist | 2 +- .../project.pbxproj | 8 +++++++- .../UserInterfaceState.xcuserstate | Bin 0 -> 16674 bytes .../Reacting to Push Notifications.xcscheme | 11 ++++++++--- .../AppDelegate.swift | 4 ++-- .../Base.lproj/Main.storyboard | 9 +++++---- .../Reacting to Push Notifications/Info.plist | 2 +- .../Info.plist | 2 +- .../project.pbxproj | 10 +++++++++- .../UserInterfaceState.xcuserstate | Bin 0 -> 12724 bytes .../Scheduling Local Notifications.xcscheme | 11 ++++++++--- .../AppDelegate.swift | 5 ----- .../Scheduling Local Notifications/Info.plist | 2 +- .../Info.plist | 2 +- .../project.pbxproj | 10 +++++++++- .../UserInterfaceState.xcuserstate | Bin 0 -> 13282 bytes .../xcschemes/Sending Notifications.xcscheme | 11 ++++++++--- .../Sending Notifications/Info.plist | 2 +- .../Sending NotificationsTests/Info.plist | 2 +- .../project.pbxproj | 8 +++++++- .../UserInterfaceState.xcuserstate | Bin 0 -> 14383 bytes ... Up Your App for Push Notifications.xcscheme | 11 ++++++++--- .../AppDelegate.swift | 4 ++-- .../Base.lproj/Main.storyboard | 9 +++++---- .../Info.plist | 2 +- .../Info.plist | 2 +- 57 files changed, 198 insertions(+), 93 deletions(-) create mode 100644 chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 chapter-notification/Handling Local System Notifications/Handling Local System Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 chapter-notification/Listening for and Reacting to Local Notifications/Listening for and Reacting to Local Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 chapter-notification/Reacting to Push Notifications/Reacting to Push Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 chapter-notification/Scheduling Local Notifications/Scheduling Local Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 chapter-notification/Sending Notifications/Sending Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate diff --git a/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App.xcodeproj/project.pbxproj b/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App.xcodeproj/project.pbxproj index 1d15b07..b5fc58c 100644 --- a/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App.xcodeproj/project.pbxproj +++ b/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App.xcodeproj/project.pbxproj @@ -156,7 +156,8 @@ A64E38291976565800CCD6A6 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0600; + LastSwiftUpdateCheck = 0700; + LastUpgradeCheck = 0700; ORGANIZATIONNAME = "Pixolity Ltd."; TargetAttributes = { A64E38301976565800CCD6A6 = { @@ -267,6 +268,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -335,6 +337,7 @@ CODE_SIGN_IDENTITY = "iPhone Developer: Vandad Nahavandipoor (J54K6K24Z3)"; INFOPLIST_FILE = "Delivering Push Notifications to Your App/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE = "16B110EE-4B5A-4B6C-9D22-9F18B7FFC1FA"; }; @@ -348,6 +351,7 @@ CODE_SIGN_ENTITLEMENTS = "$(SRCROOT)/$(TARGET_NAME)/Entitlements.plist"; INFOPLIST_FILE = "Delivering Push Notifications to Your App/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE = "16B110EE-4B5A-4B6C-9D22-9F18B7FFC1FA"; }; @@ -367,6 +371,7 @@ ); INFOPLIST_FILE = "Delivering Push Notifications to Your AppTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -382,6 +387,7 @@ ); INFOPLIST_FILE = "Delivering Push Notifications to Your AppTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; diff --git a/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate b/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..5b7c88a47e69e2ba9bc822a0d1511aa76b543900 GIT binary patch literal 14295 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 literal 0 HcmV?d00001 diff --git a/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Delivering Push Notifications to Your App.xcscheme b/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Delivering Push Notifications to Your App.xcscheme index b249604..d13a68b 100644 --- a/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Delivering Push Notifications to Your App.xcscheme +++ b/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Delivering Push Notifications to Your App.xcscheme @@ -1,6 +1,6 @@ + + - + - + CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your AppTests/Info.plist b/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your AppTests/Info.plist index de2a57c..6d32c15 100644 --- a/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your AppTests/Info.plist +++ b/chapter-notification/Delivering Push Notifications to Your App/Delivering Push Notifications to Your AppTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Handling Local System Notifications/Handling Local System Notifications.xcodeproj/project.pbxproj b/chapter-notification/Handling Local System Notifications/Handling Local System Notifications.xcodeproj/project.pbxproj index 0c19624..bf912aa 100644 --- a/chapter-notification/Handling Local System Notifications/Handling Local System Notifications.xcodeproj/project.pbxproj +++ b/chapter-notification/Handling Local System Notifications/Handling Local System Notifications.xcodeproj/project.pbxproj @@ -156,7 +156,8 @@ A6C28114197555EC008E5568 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0600; + LastSwiftUpdateCheck = 0700; + LastUpgradeCheck = 0700; ORGANIZATIONNAME = "Pixolity Ltd."; TargetAttributes = { A6C2811B197555EC008E5568 = { @@ -267,6 +268,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -333,6 +335,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Handling Local System Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Debug; @@ -344,6 +347,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Handling Local System Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Release; @@ -362,6 +366,7 @@ ); INFOPLIST_FILE = "Handling Local System NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -377,6 +382,7 @@ ); INFOPLIST_FILE = "Handling Local System NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -401,6 +407,7 @@ A6C2813A197555EC008E5568 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; A6C2813B197555EC008E5568 /* Build configuration list for PBXNativeTarget "Handling Local System NotificationsTests" */ = { isa = XCConfigurationList; @@ -409,6 +416,7 @@ A6C2813D197555EC008E5568 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; diff --git a/chapter-notification/Handling Local System Notifications/Handling Local System Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate b/chapter-notification/Handling Local System Notifications/Handling Local System Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..5ca54e82846e05282aef8530b2d1823a8d6e2148 GIT binary patch literal 14085 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 + + - + - + - + - + + - + - + diff --git a/chapter-notification/Handling Local System Notifications/Handling Local System Notifications/Info.plist b/chapter-notification/Handling Local System Notifications/Handling Local System Notifications/Info.plist index db22af3..af40bba 100644 --- a/chapter-notification/Handling Local System Notifications/Handling Local System Notifications/Info.plist +++ b/chapter-notification/Handling Local System Notifications/Handling Local System Notifications/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Handling Local System Notifications/Handling Local System Notifications/ViewController.swift b/chapter-notification/Handling Local System Notifications/Handling Local System Notifications/ViewController.swift index 1eecf5a..b533c43 100644 --- a/chapter-notification/Handling Local System Notifications/Handling Local System Notifications/ViewController.swift +++ b/chapter-notification/Handling Local System Notifications/Handling Local System Notifications/ViewController.swift @@ -11,7 +11,7 @@ import UIKit class ViewController: UIViewController { func orientationChanged(notification: NSNotification){ - println("Orientation Changed") + print("Orientation Changed") } override func viewDidAppear(animated: Bool) { diff --git a/chapter-notification/Handling Local System Notifications/Handling Local System NotificationsTests/Info.plist b/chapter-notification/Handling Local System Notifications/Handling Local System NotificationsTests/Info.plist index de2a57c..6d32c15 100644 --- a/chapter-notification/Handling Local System Notifications/Handling Local System NotificationsTests/Info.plist +++ b/chapter-notification/Handling Local System Notifications/Handling Local System NotificationsTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard Notifications.xcodeproj/project.pbxproj b/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard Notifications.xcodeproj/project.pbxproj index ad53c8d..8b54bd7 100644 --- a/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard Notifications.xcodeproj/project.pbxproj +++ b/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard Notifications.xcodeproj/project.pbxproj @@ -153,7 +153,8 @@ 9D2215E019704D5000AB694D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0600; + LastSwiftUpdateCheck = 0700; + LastUpgradeCheck = 0700; ORGANIZATIONNAME = "Pixolity Ltd."; TargetAttributes = { 9D2215E719704D5000AB694D = { @@ -263,6 +264,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -329,6 +331,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Listening and Reacting to Keyboard Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Debug; @@ -340,6 +343,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Listening and Reacting to Keyboard Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Release; @@ -358,6 +362,7 @@ ); INFOPLIST_FILE = "Listening and Reacting to Keyboard NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -373,6 +378,7 @@ ); INFOPLIST_FILE = "Listening and Reacting to Keyboard NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -397,6 +403,7 @@ 9D22160619704D5000AB694D /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; 9D22160719704D5000AB694D /* Build configuration list for PBXNativeTarget "Listening and Reacting to Keyboard NotificationsTests" */ = { isa = XCConfigurationList; @@ -405,6 +412,7 @@ 9D22160919704D5000AB694D /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; diff --git a/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate b/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..026f33bd76cbc8b0480f9853ce9d598a85069f2e GIT binary patch literal 13571 zcmd^ld3;k<^Y>ZOq-mPwX6cfoY13vabfqn{MFm<~WGzd}zQnY-Z3Agjl9WY6PDI@I z6%m!TEaEQWz9J$ZD9R=x@}M9h>LVzE;`YwXZCZlpqtEaC{qw%?X_9--HfLte%y;HY zU8~m<2o@CVMi>!9kp#scsiaU+G|4)L_Xj+_mPuA$-Aukd7?^Bz`RkiJ@VeF-^tEab zzGlUfYJ4%0p;)9vI+TbUC=2yMy-_yGLAfXo<)b20hDM_?Xe=6sYEUg2k0zjrXcC%? zrl6_Fh3Zfv@}X8V8~ITH%|Tb9Md&KD1l@{mL${+l(8FjgdIUX+9z&0#C(x7VDfBd2 zhn_*tp_kCBXam}ecA)ps2WThSg+4|H&?o3~bP|1szDK9f59lY1F~JneaU51)4r{Rv zC*mZm$Ei36=i)q^j|*@gT!KsS06Y+nz$5V}T#ZNLiFgve3^(AJcov?G=i-HUF}@n# zfN#S~@qM@*ci>0xqxdoWINpfg!kh5hcr)IDx8is3HoP70#JliEct1XZKgUP$7x*ju zEB+1tP7uL_5K1H@hNy{#Xo-#_k|dH$Qb;DTkX|I86p&(4O3KJ3WB{okgUO|21Q|(2 zks30AOd(TABWWTYGLy_AbICk1pIlBBkSod6WC^*E+(wp?`$#+KAgjq^jvPcNbu z(+WC-UP^0dEgerM(1~;sok8pAEb67rw2jW8m(xX*(d+2-^agq(y_Mcg@1gh7N9kkq zary*(l0HSBrt9c4bUl5RK1ZLYFVHvXM*0@rMBk+!(tY$Jx}Sbb571BO7xWnYk{+k0 z=nwQXJtM&qBB2tQL?JOsQY9uynj~FfmRKbYNtUFSBzL^ErOoTzh2$s>DNsC8AWkl)wn19f(6}CSm_#RwrjIEbLcWQPQtpZfRx7klf;` z%EH{TA$_WHtNIlWt|}Q^RZ-ff+{x*NRaQ;(`DX=MUG;pWufDCBZwW>gPC{wOz6K?u z6r@K6WJIaR#A29~$yh9tvpA+$gVK>1WdH?wWJNX>&y-9Bw8)r&m9VTC!t9y|baDgEB`K=WS=e`QL1|^bA-P3;O8UT_ ziePtzrRBMODyxbrO3Mn13X3Y7T+X=@h|BjZFuuhzyNw^_hHZKpJiOn@r9=1f`XHSC z3zOvJ^umPUZPfaF-a40mSYU!D;HmS%j#7HsTy+&uO^FK@l;xO<7v`83^eHYV$T63e z6fIo1Gc3~rRM?L6z^8}%0Q=wfsU8h{3(L8u&6puvn|YNlaYreldLi6yg?wWtc@b152%hN0o`Ya|-Q z^dKW6OJ%)S5PmIWSF$W8msB1IfYo%h1gqShpwAx|>6-6r3pzOt_F2>9n_KOg<7sq3 z%T#y)(i!QhORgkK!JLft*YZ$}X(kqY8O}xt@k@WuJy-AbUHS z&P?sd$;nkyt4&+8WOJ_Fbh)AOe%|en%vmcyn9Y%)!%_qq8z;P(hmFt1yxdBXyMHXaVN zx`y|Hm*w5vO-|1ICu3@Y{v1v z!wOjuD`tIJzqQDQ9zrWnJA8MdmGHS5Y)~mHV;8~q#cUFMP8R4Dj%=0R@AHGI1bM%w zrLn3-V3J$Vpss^G4hROy;l*IEORm-c?-mqG*o`oHUaPCc&AY`N3d00V3{=doo!<&J zAyIe{wP%>UYiRd$LRWYv*cMm}%+dMOI5`cpb@#v2?`vxf#DW$tSOB)9KrkzXeZjz# z6qiM;%6jzd3f5l~@bl;eP@*pR*YLqk^gMbIm5#5jfd^5KU+(HIIGNW_Lpyq%UBVn< z+ncDN6KzCqp-pT68_b6E==m13O;EtC=p8nY4eCJK(YvgiRWR!~k9%BjzLP5*2^NHJ z0lu1nOXhLB3lte1fGLH~F_-aO%e2}~N>5aG~4^l21_K0}Au zrEDUzMmiitUm^QS^aVPGzC_2_P&SMWXCqdkuhBQ?-{@O5lGU>DY(m)1xw{(D~cB8ZCXY>oG(68t>^gBkA17Xz% z!A=f(nt5<0&8<@-D~umEl8s@bSv9M1a)%n=NcGRp|KFF4t*`*Z4xbTagr7kld_)uy zenzQekBp$@pAGGiR=%bD<+7PazTAJJODI@^rQl?63>({yWo#VFnh0tpsJ@dc_@`_Ew0Ck)|CN zF;_e8%jyI}CUgaMf{QEX%`+7nbd{ryE*P=&E19(H{vE_U$G*rHs`z2 zlG23>BNKRWOZNmm*4i_H9|yYy)W&ABtjLIY_;R74f;F_`1ma3y9!!y*=F4{uG- z*uTJ{cnQ81`iHS7zK*rAEb-{v2tFC#gm1>TusLiVyS&>cliTsX zZ_WQEtmv`fe|NxN$>a(A0sv9`Bz_7%jo0C4@Ou0#ehxp+7BR*`>?*dHUCoxTYuL2_ zMDa_=ieG{Mui@A68+Zd)s_P)gS_}W5V_VrfY^SK)fEp|Ly0*qf-Y>8b;xFK=7`2Q7 zm+u5K18BwX7J?Z8Vv0?I_J|oQ@wuk0t{HkyIcFfJg%Oo}gR9LO46h(gZ|-_EMi?%D zwBR_v6?_1Gh)_%jdb$Yej(nzg!!h8w=ImX(Ls01V*!AuBeRhMe8JoCzSG@RV3q;g# zH{L5uu!r5)jz45Kv8>urE>BCO^<(@mr0K*5@F(~nyP4g>ZtcW}fSaGO+kk`X1r_WS zwVYs%`5FjKTN=YZyTciX3jvQu_w6#z=fA&{_cilD|9tVR9Rq-azht+wga}bz<5Q3g z!QbG2<8Sc^d=h_$zh`%_JK0_AZgvm5mn~g`f54~l8T=z&gwNui*?nvo>tIi@0DGFP zV_DM#16Jt@x&-JyRir6QErcZH;ryczg+vPkTnuGA8}_FXfsCIs^)=w zg*0bR>^U{k1~3fVeQR5t*HbTs!MOono4-EduZWZ=kY**3kys)paqND!oISuETuI`I z64{7~J;YXkPPYq^NEzezG((gcnY%Uu`XC8)UQ<_aHMq&;hnRr(k8`y&^3#WU+Z3;LAxD-@!mJw#6oNI{Gwm6%8x zNhfCf3RtcPl@V|>qlY^})*#%Y8C0?7wGg8Ll9@NUAu_h7jXlOzvL{(5TkGWVyF=P2 zsZ{!e>GHahBi#{hSkH(R6?PIEu@eVd#U5slfWDF5BpWI4B9cq;ru3{eK1>BD(`vSc z!(sGC`jA2=CqR-O{ek)66omVZae4e5q)32%f7vIpVg-JMa#~c1%#Qpgf@*bj?DoNFa(RBwIB1q@Lz#H;{WGETt zx7#>+>-pot!@SMW1g&i=ieoV{D4g~X0%up(z5 zuO@6S27}+(MXKSTjV9$}EEy=|sq0(;eky$Xc`taCIXpw`8TPoyidr%rQV?K&I!LXM zi-Oz(nFzL)Ok&TngsALBX{nGiE$Z71$;dR~0ys;ilNrQGE@RKL7ubvJrIn{a#}dmS=La1?^b3Wjejdjs4#cs=6;m)|3pZO91obHiDnajv-{tOxE!w{|(6ntGp* zB{D}fhKB>tg{(xq-_t6jUI7h6bqUWd_zsb4SD?Zb-QI~TA|Y_7gt0f<@hdcp3xh{e)$@T25E__LDg1jcVncTuQvCZAslH5+BuqAN+9^m}j0%BYc zg&4^)5``^6N)LgAwuF1Oo{KF>Cs`?C@CZd~$l7j-9%0)e6g@6b^aOd5ZD%`rC|XCJ zJr|jh=g9NyUG^TcPKJXbs;Om==d!33Um>qYjd_D?VDGaJB7s;0^oU?~+8g1qyUE*R zGuZ+fx)qdr8`%yiIls>r6g5e}L)8LEQ%kKs`4 zVh8t<_s9-d;C=D|*$InmC41naY%eLD1ox3%x1VpB(CUKE;M96y-j<*sf6yIwSH|Yg zEWuQt-xC3Ku+qou6Sn(Ym$;97B)UYlpY0Jnn5b0;1%LD}a)^A&_OcJzzVrN%=zcEX zFe2{a>#)1{=>ML(i004_z@t5IiC9kZ*#X$tCk%4tf(Cvat_dk zZpRySr4TK`4vGZ3`FFdAEg2=0IyuYVSfPVTgxUX2*RJD0r8EJsCY8}xDyMN&LF1{C z9b%ud&)8vhgniDAu0dAHQ8m?2E!ELPutr~mur!3_A)Fk-{X_U7!35|kAgY+v>hrV& z1K~R^fXQyKOI=}rsFq<28W`g9gH;Yp3wPsd>YI4s!cHeXj%#ZH!vs-yI7$$3fGZFj z>}ziI@-Sf!*cXRYfcV#>tb;Yu zw*P$KON(h=WTPeQEA}`}iB8m$ zF@AoI$JZ9<%0G4)R^c8TaL)z$=ZSHRkf_QF2p)e<`2I2H0$n44Mnn}OAp*>teSz-I zsCUC!8hj!#;1B+!CBlQrbZW%e(P`|*E@wxb;OyvS)Wv>czjQl0>ZXn7IxgBoJ?t#| zS#Vq#J$vg8)`cLkCuXn=a!0vA+CpcaI~(%S0Nft_D!Axt#GYYuO6P((rSsVD=j8Y4 z0(u3l!YG7s2qSia)r61052IHdj%+MMuNDq$3|-8|hA`=%OXxKrOhZ`0vL-~h^N*96 z|CymT(VL^-1ig*k0l7PRdkD+g>75}Q3%9Ug5Z%m+@zH-3%7n`?=u+B_G!N7J=rVdg zT}~gM57LL|iV%(qVMPeXhp;k)6GB)O!dwWeABM6FsEnYi=xVx#K8&m(tN~+P62jUL z)`f6l2q(d_b#l<uBAN>L zM0_2F1wpu1fSc6rm*ONtT+JRY+|nhUJAnWWy#kg8%z5tnVF7?M^?oq&FpH5y5Y7(af}Ugh9^ENWzJtC`KL}w{2&aW`dMDjQ zchfx~Y!2a!5Y7}xxBr2TC`ut20#Hu4R?YtFjuo!@Sv5R>ML{-@AN%Xx;u_&N#WE;1 zjCN5yGTR6;{|}DFLHgN+Hhq{Lp`V8^sJ<t+GwLj8dF0|UO^f&r@2bB%e zF`>F<2t*Rl6DkXQ{@tdu^f+@yrUl;DcrNE*)rKKnS7QL4gxy$i0sKy)XD4 z0BLm%q&)zrc9nj9aLIsLA-ZE2iaym)?`DBQ&q7oJrBfrI#B(aDgL2N0d0Yj&3$k=e*_&x$HJwVMr_5|P>@*yg_uKd4W0l6 zm{YJ5E}~{)AHD*T#aBb&<#M=I*a*dz+eCg7EPg{(SJXfJZV2ax0}x59L_WQ{!b8X_ zcfzYUR0@0+p1KZ|BwnJ0YgM{Kk|0sh4Ns=Lr z0$Sgftq$RSAzTXCl+}Wf%KU3zzqKk5Plu|R=5TKgXTzzC4I+-!>F+G=usxr3HL?)(LktC z-2fr}Uh*k9M!tdS)RW{i`H`F@zd$t8AF59$K-K9KIt?mMFQat;_5x6OI+xA|u(c4X zPeXJuy#s1X&q(Z&p%S-bk>p;<3Q4DAm1K?NDap%{wx{RG3hZGF_suxj3cI3Om<9eOnywCn4*}GG0vD-G55zj5%WpRiJ0G|N~uc9 zNgdK+X^FH3Zp_ z(s!ggqz9y*N)JmvmmZgXE&aFjg!CsFk*Q@VvJ6>?Y=CTpY@DoCHbFK?=9IZ)^)g=8 zD7#j6zw9;HHrYYhA=ziLBeJ8iW3uD2uVw$1ortBeF|o2(d8{H<8LNs_$7*8}W0PYG zW6NX5$9iJt#oiXXGWLzwJ+XUZzll8^dnWcLIgzX6N%B;=O>UQG$@|EQ<^ANP@^bl5 z`EdD2d9{3ue7d|&?v^*mXUUu8KKX2UP(D|_PQG5gLH@RUi~Jq=4*3W2UGhC~yW{r8 z9gaH|cRcRvxRY_;$Ndm@Mj=rs6)J^Vp;aU*(iCPzroyVQE3y<9D~2dWC?+Z{Q`9SX zMWbS#;wr^WilvHWisgz26)WNw$KMoxU;Og;2jko0JL6ZyKOTQ5{!67?$teqzLzJVH zW0d2REy`P!w=0(^?^iycT&-NAT&sLexly@ExmmeYxlQ@5a)Zh$ z3@VGtrgErysj^kMsyvlTb)Tw3^`vUO>N(X5s#jI7t2U@Ms`jc5tB$FTtG-s9RDG}d zL3M_ca57HL#d8T9$Cb-ub(U8Nqb9;vQY*Qm#q5H4x+S`6b=T`|)ZMJRRd>7YLER&|O}dYC zKO|}s(-Zq9RwRx{9F;gaacp8u;WF!77TQ;EMNX_M?p zeUpYJxsw`_nv!NFd6Qa_RwS)WdMasM()y(5l3qyKl=Obm-lTm=`;!hN9ZdQnS(>a! z?wwqcT$X%M@+HXwlSd|3Cyz-Um%JqTj^w+N?@3;ovLxk}l$9xKQ(jNmlJb4Zk9v!K zklv%8qrXyrgZ?J{E&AK^_vs(fuhc)Te@eejzh1vhzfb?E{;>XY{TKQ#_221F=}+r_ z)SuP=Vu&%Q37^fPi8=Xd%ai(#u z@e1RWMrK@Myw-TV@kZla#&%j@pU*jCQ-3wdO$w9Jq%x^Zc2kzAw<*VzXDTq2nFg6EOqHe~rlF?srirG>rm3bT z(@c}s)M8p-T4-8i3YpfMHkdY=Hkme?4w*hP9Wfm>9W$LYoid#^{g{T+veOFErli%U zU7vPK+WNE&Y44})OxvBdH*H_q{n-k5MW}Dez?rqL7=b0}uSDJ^Ihnk0*N1Df* zCz>alr<$jmo#rNUn|YD>CiAW4+s${G?=demuQIPOuQflKaZASi87nhZXFQzoNXBCs z&t^QI@nXiy8Lwr$k#Qo^m^nOiUgjN{4`p^_uFPDMxi<6B%=MWsX1<*HYUb;i+cQ7N z+?BZ}bART6%!8SSEE0>-Vz8uJGAtHLmZi5P$C76$u?(^dwp3XzwM?>1walvoqtIBG!jpYKC&IM9kv~{9kU&`o9w0bvGyr;-ri)NWpA<1wg>HV?2GL; z*l)JqX1~+E%>ICVg}u|h%Ko1H7e|((kE7Hv%Q4Tf$Z?fpiQ_uQt&Te!cRQ9kmN_~d zs~nFyUU0nbc+;`TvBj~&vD2}~vCpyJaoBM*OP^)W%FQasD$44YbxGEstif4BvW8}j z&6mTY@=uk4)cvh0hq2V|FLS7r~%9-2Ko z+n0S;_G{V4vQK88%^^98oP?a@oU|NEPGL@Q&Lug6aw>8vb4KNi%c;$okTWS~W{xkX StqUp=@mta_3MrzTx&H?TarCAD literal 0 HcmV?d00001 diff --git a/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Listening and Reacting to Keyboard Notifications.xcscheme b/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Listening and Reacting to Keyboard Notifications.xcscheme index 17f90ea..116eb1e 100644 --- a/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Listening and Reacting to Keyboard Notifications.xcscheme +++ b/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Listening and Reacting to Keyboard Notifications.xcscheme @@ -1,6 +1,6 @@ + + - + - + CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard NotificationsTests/Info.plist b/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard NotificationsTests/Info.plist index de2a57c..6d32c15 100644 --- a/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard NotificationsTests/Info.plist +++ b/chapter-notification/Listening and Reacting to Keyboard Notifications/Listening and Reacting to Keyboard NotificationsTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Listening for and Reacting to Local Notifications/Listening for and Reacting to Local Notifications.xcodeproj/project.pbxproj b/chapter-notification/Listening for and Reacting to Local Notifications/Listening for and Reacting to Local Notifications.xcodeproj/project.pbxproj index 33eb1f6..5d5c24a 100644 --- a/chapter-notification/Listening for and Reacting to Local Notifications/Listening for and Reacting to Local Notifications.xcodeproj/project.pbxproj +++ b/chapter-notification/Listening for and Reacting to Local Notifications/Listening for and Reacting to Local Notifications.xcodeproj/project.pbxproj @@ -153,7 +153,8 @@ 9DC8F4DB197060CC00B11FD5 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0600; + LastSwiftUpdateCheck = 0700; + LastUpgradeCheck = 0700; ORGANIZATIONNAME = "Pixolity Ltd."; TargetAttributes = { 9DC8F4E2197060CC00B11FD5 = { @@ -263,6 +264,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -329,6 +331,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Listening for and Reacting to Local Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Debug; @@ -340,6 +343,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Listening for and Reacting to Local Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Release; @@ -358,6 +362,7 @@ ); INFOPLIST_FILE = "Listening for and Reacting to Local NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -373,6 +378,7 @@ ); INFOPLIST_FILE = "Listening for and Reacting to Local NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -397,6 +403,7 @@ 9DC8F501197060CD00B11FD5 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; 9DC8F502197060CD00B11FD5 /* Build configuration list for PBXNativeTarget "Listening for and Reacting to Local NotificationsTests" */ = { isa = XCConfigurationList; @@ -405,6 +412,7 @@ 9DC8F504197060CD00B11FD5 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; diff --git a/chapter-notification/Listening for and Reacting to Local Notifications/Listening for and Reacting to Local Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate b/chapter-notification/Listening for and Reacting to Local Notifications/Listening for and Reacting to Local Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..0924f602c964f1f67b2e430010498ff24ec0177f GIT binary patch literal 14569 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 + + - + - + CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Listening for and Reacting to Local Notifications/Listening for and Reacting to Local NotificationsTests/Info.plist b/chapter-notification/Listening for and Reacting to Local Notifications/Listening for and Reacting to Local NotificationsTests/Info.plist index de2a57c..6d32c15 100644 --- a/chapter-notification/Listening for and Reacting to Local Notifications/Listening for and Reacting to Local NotificationsTests/Info.plist +++ b/chapter-notification/Listening for and Reacting to Local Notifications/Listening for and Reacting to Local NotificationsTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications.xcodeproj/project.pbxproj b/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications.xcodeproj/project.pbxproj index 0078716..2d047c3 100644 --- a/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications.xcodeproj/project.pbxproj +++ b/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications.xcodeproj/project.pbxproj @@ -156,7 +156,8 @@ 9D2215B3197047DB00AB694D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0600; + LastSwiftUpdateCheck = 0700; + LastUpgradeCheck = 0700; ORGANIZATIONNAME = "Pixolity Ltd."; TargetAttributes = { 9D2215BA197047DB00AB694D = { @@ -267,6 +268,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -333,6 +335,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Listening for and Reacting to Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Debug; @@ -344,6 +347,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Listening for and Reacting to Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Release; @@ -362,6 +366,7 @@ ); INFOPLIST_FILE = "Listening for and Reacting to NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -377,6 +382,7 @@ ); INFOPLIST_FILE = "Listening for and Reacting to NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -401,6 +407,7 @@ 9D2215D9197047DB00AB694D /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; 9D2215DA197047DB00AB694D /* Build configuration list for PBXNativeTarget "Listening for and Reacting to NotificationsTests" */ = { isa = XCConfigurationList; @@ -409,6 +416,7 @@ 9D2215DC197047DB00AB694D /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; diff --git a/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate b/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..0cb82e919a78e97a7e9f64057a978352efd8c531 GIT binary patch literal 14376 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 K-;vMUvi}2w4fPrT literal 0 HcmV?d00001 diff --git a/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Listening for and Reacting to Notifications.xcscheme b/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Listening for and Reacting to Notifications.xcscheme index c4b42d6..e700afb 100644 --- a/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Listening for and Reacting to Notifications.xcscheme +++ b/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Listening for and Reacting to Notifications.xcscheme @@ -1,6 +1,6 @@ + + - + - + - + - + + - + - + diff --git a/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications/Info.plist b/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications/Info.plist index db22af3..af40bba 100644 --- a/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications/Info.plist +++ b/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to NotificationsTests/Info.plist b/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to NotificationsTests/Info.plist index de2a57c..6d32c15 100644 --- a/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to NotificationsTests/Info.plist +++ b/chapter-notification/Listening for and Reacting to Notifications/Listening for and Reacting to NotificationsTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Reacting to Push Notifications/Reacting to Push Notifications.xcodeproj/project.pbxproj b/chapter-notification/Reacting to Push Notifications/Reacting to Push Notifications.xcodeproj/project.pbxproj index d1a8bf4..e8d89ac 100644 --- a/chapter-notification/Reacting to Push Notifications/Reacting to Push Notifications.xcodeproj/project.pbxproj +++ b/chapter-notification/Reacting to Push Notifications/Reacting to Push Notifications.xcodeproj/project.pbxproj @@ -153,7 +153,8 @@ A64E3856197656CC00CCD6A6 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0600; + LastSwiftUpdateCheck = 0700; + LastUpgradeCheck = 0700; ORGANIZATIONNAME = "Pixolity Ltd."; TargetAttributes = { A64E385D197656CC00CCD6A6 = { @@ -263,6 +264,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -330,6 +332,7 @@ CODE_SIGN_IDENTITY = "iPhone Developer: Vandad Nahavandipoor (J54K6K24Z3)"; INFOPLIST_FILE = "Reacting to Push Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE = "16B110EE-4B5A-4B6C-9D22-9F18B7FFC1FA"; }; @@ -342,6 +345,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Reacting to Push Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE = "16B110EE-4B5A-4B6C-9D22-9F18B7FFC1FA"; }; @@ -361,6 +365,7 @@ ); INFOPLIST_FILE = "Reacting to Push NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -376,6 +381,7 @@ ); INFOPLIST_FILE = "Reacting to Push NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; diff --git a/chapter-notification/Reacting to Push Notifications/Reacting to Push Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate b/chapter-notification/Reacting to Push Notifications/Reacting to Push Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..541cce742856bf8ba36fa653332f87fd2328af53 GIT binary patch literal 16674 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 + + - + - + - + - + + - + - + diff --git a/chapter-notification/Reacting to Push Notifications/Reacting to Push Notifications/Info.plist b/chapter-notification/Reacting to Push Notifications/Reacting to Push Notifications/Info.plist index db22af3..af40bba 100644 --- a/chapter-notification/Reacting to Push Notifications/Reacting to Push Notifications/Info.plist +++ b/chapter-notification/Reacting to Push Notifications/Reacting to Push Notifications/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Reacting to Push Notifications/Reacting to Push NotificationsTests/Info.plist b/chapter-notification/Reacting to Push Notifications/Reacting to Push NotificationsTests/Info.plist index de2a57c..6d32c15 100644 --- a/chapter-notification/Reacting to Push Notifications/Reacting to Push NotificationsTests/Info.plist +++ b/chapter-notification/Reacting to Push Notifications/Reacting to Push NotificationsTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Scheduling Local Notifications/Scheduling Local Notifications.xcodeproj/project.pbxproj b/chapter-notification/Scheduling Local Notifications/Scheduling Local Notifications.xcodeproj/project.pbxproj index 89b5443..3f25108 100644 --- a/chapter-notification/Scheduling Local Notifications/Scheduling Local Notifications.xcodeproj/project.pbxproj +++ b/chapter-notification/Scheduling Local Notifications/Scheduling Local Notifications.xcodeproj/project.pbxproj @@ -153,7 +153,8 @@ 9DC8F4B019705A5C00B11FD5 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0600; + LastSwiftUpdateCheck = 0700; + LastUpgradeCheck = 0700; ORGANIZATIONNAME = "Pixolity Ltd."; TargetAttributes = { 9DC8F4B719705A5C00B11FD5 = { @@ -263,6 +264,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -329,6 +331,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Scheduling Local Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Debug; @@ -340,6 +343,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Scheduling Local Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Release; @@ -358,6 +362,7 @@ ); INFOPLIST_FILE = "Scheduling Local NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -373,6 +378,7 @@ ); INFOPLIST_FILE = "Scheduling Local NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -397,6 +403,7 @@ 9DC8F4D619705A5C00B11FD5 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; 9DC8F4D719705A5C00B11FD5 /* Build configuration list for PBXNativeTarget "Scheduling Local NotificationsTests" */ = { isa = XCConfigurationList; @@ -405,6 +412,7 @@ 9DC8F4D919705A5C00B11FD5 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; diff --git a/chapter-notification/Scheduling Local Notifications/Scheduling Local Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate b/chapter-notification/Scheduling Local Notifications/Scheduling Local Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..5f29664eabeedb2a9466815b294276ab4ae1b1e1 GIT binary patch literal 12724 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 LD#DjTY4`pgA9er` literal 0 HcmV?d00001 diff --git a/chapter-notification/Scheduling Local Notifications/Scheduling Local Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Scheduling Local Notifications.xcscheme b/chapter-notification/Scheduling Local Notifications/Scheduling Local Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Scheduling Local Notifications.xcscheme index 6c0b1e8..11b27c4 100644 --- a/chapter-notification/Scheduling Local Notifications/Scheduling Local Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Scheduling Local Notifications.xcscheme +++ b/chapter-notification/Scheduling Local Notifications/Scheduling Local Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Scheduling Local Notifications.xcscheme @@ -1,6 +1,6 @@ + + - + - + CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Scheduling Local Notifications/Scheduling Local NotificationsTests/Info.plist b/chapter-notification/Scheduling Local Notifications/Scheduling Local NotificationsTests/Info.plist index de2a57c..6d32c15 100644 --- a/chapter-notification/Scheduling Local Notifications/Scheduling Local NotificationsTests/Info.plist +++ b/chapter-notification/Scheduling Local Notifications/Scheduling Local NotificationsTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Sending Notifications/Sending Notifications.xcodeproj/project.pbxproj b/chapter-notification/Sending Notifications/Sending Notifications.xcodeproj/project.pbxproj index 6f86a37..17c52cb 100644 --- a/chapter-notification/Sending Notifications/Sending Notifications.xcodeproj/project.pbxproj +++ b/chapter-notification/Sending Notifications/Sending Notifications.xcodeproj/project.pbxproj @@ -153,7 +153,8 @@ 9D2215881970469300AB694D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0600; + LastSwiftUpdateCheck = 0700; + LastUpgradeCheck = 0700; ORGANIZATIONNAME = "Pixolity Ltd."; TargetAttributes = { 9D22158F1970469300AB694D = { @@ -263,6 +264,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -329,6 +331,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Sending Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Debug; @@ -340,6 +343,7 @@ ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; INFOPLIST_FILE = "Sending Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Release; @@ -358,6 +362,7 @@ ); INFOPLIST_FILE = "Sending NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -373,6 +378,7 @@ ); INFOPLIST_FILE = "Sending NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -397,6 +403,7 @@ 9D2215AE1970469300AB694D /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; 9D2215AF1970469300AB694D /* Build configuration list for PBXNativeTarget "Sending NotificationsTests" */ = { isa = XCConfigurationList; @@ -405,6 +412,7 @@ 9D2215B11970469300AB694D /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; diff --git a/chapter-notification/Sending Notifications/Sending Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate b/chapter-notification/Sending Notifications/Sending Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..cc67ca805029623f69b1eac3e076ab657690b0bd GIT binary patch literal 13282 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 Zk~8cX1sOv!O1cmw5k5tiAj*ug{|CjjX)FK$ literal 0 HcmV?d00001 diff --git a/chapter-notification/Sending Notifications/Sending Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Sending Notifications.xcscheme b/chapter-notification/Sending Notifications/Sending Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Sending Notifications.xcscheme index 5202448..1f39095 100644 --- a/chapter-notification/Sending Notifications/Sending Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Sending Notifications.xcscheme +++ b/chapter-notification/Sending Notifications/Sending Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Sending Notifications.xcscheme @@ -1,6 +1,6 @@ + + - + - + CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Sending Notifications/Sending NotificationsTests/Info.plist b/chapter-notification/Sending Notifications/Sending NotificationsTests/Info.plist index de2a57c..6d32c15 100644 --- a/chapter-notification/Sending Notifications/Sending NotificationsTests/Info.plist +++ b/chapter-notification/Sending Notifications/Sending NotificationsTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications.xcodeproj/project.pbxproj b/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications.xcodeproj/project.pbxproj index 38a6bdf..b9d9c95 100644 --- a/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications.xcodeproj/project.pbxproj +++ b/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications.xcodeproj/project.pbxproj @@ -156,7 +156,8 @@ A6C2814119755A2B008E5568 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0600; + LastSwiftUpdateCheck = 0700; + LastUpgradeCheck = 0700; ORGANIZATIONNAME = "Pixolity Ltd."; TargetAttributes = { A6C2814819755A2B008E5568 = { @@ -267,6 +268,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -335,6 +337,7 @@ CODE_SIGN_IDENTITY = "iPhone Developer: Vandad Nahavandipoor (J54K6K24Z3)"; INFOPLIST_FILE = "Setting Up Your App for Push Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE = "16B110EE-4B5A-4B6C-9D22-9F18B7FFC1FA"; }; @@ -349,6 +352,7 @@ CODE_SIGN_IDENTITY = "iPhone Developer: Vandad Nahavandipoor (J54K6K24Z3)"; INFOPLIST_FILE = "Setting Up Your App for Push Notifications/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE = "16B110EE-4B5A-4B6C-9D22-9F18B7FFC1FA"; }; @@ -368,6 +372,7 @@ ); INFOPLIST_FILE = "Setting Up Your App for Push NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; @@ -383,6 +388,7 @@ ); INFOPLIST_FILE = "Setting Up Your App for Push NotificationsTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.pixolity.ios.cookbook.app; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUNDLE_LOADER)"; }; diff --git a/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate b/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications.xcodeproj/project.xcworkspace/xcuserdata/vandadnp.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..81015532a7cbe8734e5126686123ab4c515d6c77 GIT binary patch literal 14383 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 HS?&J^Bn18X literal 0 HcmV?d00001 diff --git a/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Setting Up Your App for Push Notifications.xcscheme b/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Setting Up Your App for Push Notifications.xcscheme index dcd3f12..2b71f74 100644 --- a/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Setting Up Your App for Push Notifications.xcscheme +++ b/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications.xcodeproj/xcuserdata/vandadnp.xcuserdatad/xcschemes/Setting Up Your App for Push Notifications.xcscheme @@ -1,6 +1,6 @@ + + - + - + - + - + + - + - + diff --git a/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications/Info.plist b/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications/Info.plist index db22af3..af40bba 100644 --- a/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications/Info.plist +++ b/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push NotificationsTests/Info.plist b/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push NotificationsTests/Info.plist index de2a57c..6d32c15 100644 --- a/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push NotificationsTests/Info.plist +++ b/chapter-notification/Setting Up Your App for Push Notifications/Setting Up Your App for Push NotificationsTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable ${EXECUTABLE_NAME} CFBundleIdentifier - com.pixolity.ios.cookbook.app + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName