├── .gitignore ├── Examples ├── Advanced Demo │ ├── English.lproj │ │ └── InfoPlist.strings │ ├── iRateAdvanced_Prefix.pch │ ├── iRateAdvanced.xcodeproj │ │ ├── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ │ └── project.pbxproj │ ├── main.m │ ├── iRateMacAppDelegate.h │ ├── iRateAdvanced-Info.plist │ └── iRateMacAppDelegate.m ├── Events Demo │ ├── Default-568h@2x.png │ ├── iRate.xcodeproj │ │ ├── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ │ └── project.pbxproj │ ├── iRate_Prefix.pch │ ├── Classes │ │ ├── iRateViewController.h │ │ ├── iRateAppDelegate.h │ │ ├── iRateViewController.m │ │ └── iRateAppDelegate.m │ ├── main.m │ ├── iRate-Info.plist │ ├── MainWindow.xib │ └── iRateViewController.xib ├── Zero Config Demo │ ├── Default-568h@2x.png │ ├── ZeroConfig.xcodeproj │ │ ├── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── xcschemes │ │ │ │ └── ZeroConfig.xcscheme │ │ └── project.pbxproj │ ├── ZeroConfig_Prefix.pch │ ├── Classes │ │ ├── iRateViewController.h │ │ ├── iRateViewController.m │ │ ├── iRateAppDelegate.h │ │ └── iRateAppDelegate.m │ ├── main.m │ ├── ZeroConfig-Info.plist │ └── iRateViewController.xib ├── iPhone Custom UI Demo │ ├── Default-568h@2x.png │ ├── iRate.xcodeproj │ │ └── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ ├── iRate_Prefix.pch │ ├── Classes │ │ ├── iRateViewController.h │ │ ├── iRateAppDelegate.h │ │ ├── iRateViewController.m │ │ └── iRateAppDelegate.m │ ├── main.m │ ├── iRate-Info.plist │ ├── iRateViewController.xib │ └── MainWindow.xib ├── Mac Demo │ ├── iRateMac_Prefix.pch │ ├── main.m │ ├── iRateMacAppDelegate.h │ ├── iRateMacAppDelegate.m │ └── iRateMac-Info.plist ├── Swift Demo │ ├── SwiftDemo.xcodeproj │ │ ├── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ │ └── project.pbxproj │ └── SwiftDemo │ │ ├── SwiftDemo-Bridging-Header.h │ │ ├── ViewController.swift │ │ ├── Images.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ │ ├── AppDelegate.swift │ │ ├── Info.plist │ │ └── Base.lproj │ │ ├── Main.storyboard │ │ └── LaunchScreen.xib └── iPhone Demo │ ├── iPhoneDemo.xcodeproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ └── project.pbxproj │ ├── iPhoneDemo │ ├── ViewController.h │ ├── AppDelegate.h │ ├── main.m │ ├── ViewController.m │ ├── Images.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── AppDelegate.m │ ├── Info.plist │ └── Base.lproj │ │ ├── Main.storyboard │ │ └── LaunchScreen.xib │ └── iPhoneDemoTests │ ├── Info.plist │ └── iPhoneDemoTests.m ├── iRate ├── iRate.bundle │ ├── ar.lproj │ │ └── Localizable.strings │ ├── bn.lproj │ │ └── Localizable.strings │ ├── de.lproj │ │ └── Localizable.strings │ ├── el.lproj │ │ └── Localizable.strings │ ├── en.lproj │ │ └── Localizable.strings │ ├── es.lproj │ │ └── Localizable.strings │ ├── he.lproj │ │ └── Localizable.strings │ ├── hi.lproj │ │ └── Localizable.strings │ ├── id.lproj │ │ └── Localizable.strings │ ├── it.lproj │ │ └── Localizable.strings │ ├── ja.lproj │ │ └── Localizable.strings │ ├── ko.lproj │ │ └── Localizable.strings │ ├── mk.lproj │ │ └── Localizable.strings │ ├── no.lproj │ │ └── Localizable.strings │ ├── pa.lproj │ │ └── Localizable.strings │ ├── pl.lproj │ │ └── Localizable.strings │ ├── pt.lproj │ │ └── Localizable.strings │ ├── ru.lproj │ │ └── Localizable.strings │ ├── sl.lproj │ │ └── Localizable.strings │ ├── th.lproj │ │ └── Localizable.strings │ ├── tr.lproj │ │ └── Localizable.strings │ ├── uk.lproj │ │ └── Localizable.strings │ ├── zh-Hans.lproj │ │ └── Localizable.strings │ ├── zh-Hant.lproj │ │ └── Localizable.strings │ ├── sv.lproj │ │ └── Localizable.strings │ ├── de-AT.lproj │ │ └── Localizable.strings │ ├── vi.lproj │ │ └── Localizable.strings │ ├── cs.lproj │ │ └── Localizable.strings │ ├── sk.lproj │ │ └── Localizable.strings │ ├── nl.lproj │ │ └── Localizable.strings │ ├── da.lproj │ │ └── Localizable.strings │ ├── fa.lproj │ │ └── Localizable.strings │ ├── fr.lproj │ │ └── Localizable.strings │ ├── ur.lproj │ │ └── Localizable.strings │ ├── ur-IN.lproj │ │ └── Localizable.strings │ └── ur-PK.lproj │ │ └── Localizable.strings ├── Info.plist └── iRate.h ├── iRate.podspec.json ├── LICENCE.md └── iRate.xcodeproj ├── xcshareddata └── xcschemes │ ├── iRate.xcscheme │ └── iRate-OSX.xcscheme └── project.pbxproj /.gitignore: -------------------------------------------------------------------------------- 1 | xcuserdata 2 | -------------------------------------------------------------------------------- /Examples/Advanced Demo/English.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Examples/Events Demo/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/Examples/Events Demo/Default-568h@2x.png -------------------------------------------------------------------------------- /Examples/Zero Config Demo/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/Examples/Zero Config Demo/Default-568h@2x.png -------------------------------------------------------------------------------- /iRate/iRate.bundle/ar.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/ar.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/bn.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/bn.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/de.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/de.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/el.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/el.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/en.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/en.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/es.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/es.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/he.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/he.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/hi.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/hi.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/id.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/id.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/it.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/it.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/ja.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/ja.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/ko.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/ko.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/mk.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/mk.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/no.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/no.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/pa.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/pa.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/pl.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/pl.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/pt.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/pt.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/ru.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/ru.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/sl.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/sl.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/th.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/th.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/tr.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/tr.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/uk.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/uk.lproj/Localizable.strings -------------------------------------------------------------------------------- /Examples/iPhone Custom UI Demo/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/Examples/iPhone Custom UI Demo/Default-568h@2x.png -------------------------------------------------------------------------------- /iRate/iRate.bundle/zh-Hans.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/zh-Hans.lproj/Localizable.strings -------------------------------------------------------------------------------- /iRate/iRate.bundle/zh-Hant.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/otto-de-legacy/iRate/master/iRate/iRate.bundle/zh-Hant.lproj/Localizable.strings -------------------------------------------------------------------------------- /Examples/Mac Demo/iRateMac_Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'iRateMac' target in the 'iRateMac' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /Examples/Advanced Demo/iRateAdvanced_Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'iVersionMac' target in the 'iVersionMac' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /Examples/Events Demo/iRate.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Examples/Events Demo/iRate_Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'iRate' target in the 'iRate' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #import 8 | #endif 9 | -------------------------------------------------------------------------------- /Examples/Swift Demo/SwiftDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Examples/Advanced Demo/iRateAdvanced.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Examples/Zero Config Demo/ZeroConfig.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Examples/Zero Config Demo/ZeroConfig_Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'iRate' target in the 'iRate' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #import 8 | #endif 9 | -------------------------------------------------------------------------------- /Examples/iPhone Custom UI Demo/iRate.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Examples/iPhone Custom UI Demo/iRate_Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'iRate' target in the 'iRate' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #import 8 | #endif 9 | -------------------------------------------------------------------------------- /Examples/Swift Demo/SwiftDemo/SwiftDemo-Bridging-Header.h: -------------------------------------------------------------------------------- 1 | // 2 | // SwiftExample-Bridging-Header.h 3 | // SwiftExample 4 | // 5 | // Created by Nick Lockwood on 30/07/2014. 6 | // Copyright (c) 2014 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import "iRate.h" 10 | -------------------------------------------------------------------------------- /Examples/Mac Demo/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // iRateMac 4 | // 5 | // Created by Nick Lockwood on 04/02/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) 12 | { 13 | return NSApplicationMain(argc, (const char **) argv); 14 | } 15 | -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemo/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // iPhoneDemo 4 | // 5 | // Created by Nick Lockwood on 12/10/2014. 6 | // Copyright (c) 2014 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /Examples/Advanced Demo/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // iVersionMac 4 | // 5 | // Created by Nick Lockwood on 06/02/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) 12 | { 13 | return NSApplicationMain(argc, (const char **) argv); 14 | } 15 | -------------------------------------------------------------------------------- /Examples/iPhone Custom UI Demo/Classes/iRateViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // iRateViewController.h 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface iRateViewController : UIViewController 12 | 13 | @end 14 | 15 | -------------------------------------------------------------------------------- /Examples/Zero Config Demo/Classes/iRateViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // iRateViewController.h 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface iRateViewController : UIViewController { 12 | 13 | } 14 | 15 | @end 16 | 17 | -------------------------------------------------------------------------------- /Examples/Events Demo/Classes/iRateViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // iRateViewController.h 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface iRateViewController : UIViewController 12 | 13 | - (IBAction)logEvent; 14 | 15 | @end 16 | 17 | -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemo/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // iPhoneDemo 4 | // 5 | // Created by Nick Lockwood on 12/10/2014. 6 | // Copyright (c) 2014 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | 17 | -------------------------------------------------------------------------------- /Examples/Events Demo/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) { 12 | 13 | @autoreleasepool { 14 | int retVal = UIApplicationMain(argc, argv, nil, nil); 15 | return retVal; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Examples/Mac Demo/iRateMacAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // iRateMacAppDelegate.h 3 | // iRateMac 4 | // 5 | // Created by Nick Lockwood on 04/02/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface iRateMacAppDelegate : NSObject 12 | 13 | @property (unsafe_unretained, nonatomic) IBOutlet NSWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Examples/Zero Config Demo/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) { 12 | 13 | @autoreleasepool { 14 | int retVal = UIApplicationMain(argc, argv, nil, nil); 15 | return retVal; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Examples/iPhone Custom UI Demo/Classes/iRateAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // iRateAppDelegate.h 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface iRateAppDelegate : NSObject 12 | 13 | @property (nonatomic, strong) IBOutlet UIWindow *window; 14 | 15 | @end 16 | 17 | -------------------------------------------------------------------------------- /Examples/iPhone Custom UI Demo/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) { 12 | 13 | @autoreleasepool { 14 | int retVal = UIApplicationMain(argc, argv, nil, nil); 15 | return retVal; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemo/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // iPhoneDemo 4 | // 5 | // Created by Nick Lockwood on 12/10/2014. 6 | // Copyright (c) 2014 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /iRate/iRate.bundle/sv.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "Betygsätt %@"; 2 | "iRateAppMessage" = "Gillar du %@ och kan tänka dig att betygsätta den? Det tar inte mer än en minut. Tack för ditt stöd!"; 3 | "iRateGameMessage" = "Gillar du att spela %@ och kan tänka dig att betygsätta det? Det tar inte mer än en minut. Tack för ditt stöd!"; 4 | "iRateCancelButton" = "Nej tack"; 5 | "iRateRateButton" = "Betygsätt nu!"; 6 | "iRateRemindButton" = "Påminn mig senare"; -------------------------------------------------------------------------------- /Examples/Zero Config Demo/Classes/iRateViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // iRateViewController.m 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import "iRateViewController.h" 10 | 11 | @implementation iRateViewController 12 | 13 | - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation 14 | { 15 | return YES; 16 | } 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Examples/iPhone Custom UI Demo/Classes/iRateViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // iRateViewController.m 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import "iRateViewController.h" 10 | 11 | @implementation iRateViewController 12 | 13 | - (BOOL)shouldAutorotateToInterfaceOrientation:(__unused UIInterfaceOrientation)toInterfaceOrientation 14 | { 15 | return YES; 16 | } 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /iRate/iRate.bundle/de-AT.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "Bewerte %@"; 2 | "iRateAppMessage" = "Wenn dir %@ gefällt, würdest Du es bitte bewerten? Dies wird nicht länger als eine Minute dauern.\nDanke für die Unterstützung!"; 3 | "iRateGameMessage" = "Wenn dir %@ gefällt, würdest Du es bitte bewerten? Dies wird nicht länger als eine Minute dauern. Danke für die Unterstützung!"; 4 | "iRateCancelButton" = "Nein, danke"; 5 | "iRateRateButton" = "Jetzt bewerten"; 6 | "iRateRemindButton" = "Später erinnern"; -------------------------------------------------------------------------------- /iRate/iRate.bundle/vi.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "Đánh giá %@"; 2 | "iRateAppMessage" = "Nếu thích sử dụng %@, bạn có muốn giành một chút thời gian để đánh giá nó? Sẽ không lâu hơn một phút. Cảm ơn sự hỗ trợ của bạn!"; 3 | "iRateGameMessage" = "Nếu thích chơi %@, bạn có muốn giành một chút thời gian để đánh giá nó? Sẽ không lâu hơn một phút. Cảm ơn sự hỗ trợ của bạn!"; 4 | "iRateCancelButton" = "Không, Cảm ơn"; 5 | "iRateRateButton" = "Đánh Giá Ngay"; 6 | "iRateRemindButton" = "Nhắc Tôi Sau"; 7 | -------------------------------------------------------------------------------- /iRate/iRate.bundle/cs.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "Ohodnotit %@"; 2 | "iRateAppMessage" = "Pokud se vám líbí %@, našli byste si chvilku na ohodnocení aplikace? Nebude to trvat víc než minutu.\nDěkujeme za vaši podporu!"; 3 | "iRateGameMessage" = "Pokud se vám %@ líbí, našli byste si chvilku na ohodnocení hry? Nebude to trvat víc než minutu. Děkujeme za vaši podporu!"; 4 | "iRateCancelButton" = "Ne, děkuji"; 5 | "iRateRateButton" = "Ohodnotit nyní"; 6 | "iRateRemindButton" = "Připomenout později"; 7 | -------------------------------------------------------------------------------- /iRate/iRate.bundle/sk.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "Ohodnotiť %@"; 2 | "iRateAppMessage" = "Ak sa vám páči %@, našli by ste si chvíľku na ohodnotenie aplikácie? Nebude to trvať viac ako minútu.\nĎakujeme za vašu podporu!"; 3 | "iRateGameMessage" = "Ak sa vám hra %@ páči, našli by ste si chvíľku na ohodnotenie aplikácie? Nebude to trvať viac ako minútu. Ďakujeme za vašu podporu!"; 4 | "iRateCancelButton" = "Nie, Ďakujem"; 5 | "iRateRateButton" = "Ohodnotiť teraz"; 6 | "iRateRemindButton" = "Pripomenúť neskôr"; -------------------------------------------------------------------------------- /iRate/iRate.bundle/nl.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "Beoordeel %@"; 2 | "iRateAppMessage" = "Als het gebruik van %@ je bevalt, wil je dan een moment nemen om het te beoordelen? Het duurt nog geen minuut. Bedankt voor je steun!"; 3 | "iRateGameMessage" = "Als het spelen van %@ je bevalt, wil je dan een moment nemen om het te beoordelen? Het duurt nog geen minuut. Bedankt voor je steun!"; 4 | "iRateCancelButton" = "Nee, bedankt"; 5 | "iRateRateButton" = "Beoordeel nu"; 6 | "iRateRemindButton" = "Herinner me er later aan"; -------------------------------------------------------------------------------- /Examples/Events Demo/Classes/iRateAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // iRateAppDelegate.h 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class iRateViewController; 12 | 13 | @interface iRateAppDelegate : NSObject 14 | 15 | @property (nonatomic, strong) IBOutlet UIWindow *window; 16 | @property (nonatomic, strong) IBOutlet iRateViewController *viewController; 17 | 18 | @end 19 | 20 | -------------------------------------------------------------------------------- /iRate/iRate.bundle/da.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "Vurdér %@"; 2 | "iRateAppMessage" = "Hvis du kan lide at bruge %@, vil du så ikke bruge et øjeblik på at give en vurdering? Det tager ikke mere end et minut. Mange tak for hjælpen!"; 3 | "iRateGameMessage" = "Hvis du kan lide at spille %@, vil du så ikke bruge et øjeblik på at vurdere det? Det tager ikke mere end et minut. Mange tak for hjælpen!"; 4 | "iRateCancelButton" = "Nej tak"; 5 | "iRateRateButton" = "Vurdér nu"; 6 | "iRateRemindButton" = "Påmind mig senere"; 7 | -------------------------------------------------------------------------------- /Examples/Zero Config Demo/Classes/iRateAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // iRateAppDelegate.h 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class iRateViewController; 12 | 13 | @interface iRateAppDelegate : NSObject 14 | 15 | @property (nonatomic, strong) IBOutlet UIWindow *window; 16 | @property (nonatomic, strong) IBOutlet iRateViewController *viewController; 17 | 18 | @end 19 | 20 | -------------------------------------------------------------------------------- /iRate/iRate.bundle/fa.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "امتیاز دهی به %@"; 2 | "iRateAppMessage" = "اگر شما از برنامه‌ی %@ لذت بردین، عالی میشه اگه با این برنامه در اپ‌استور امتیاز دهید! این کار بیشتر از ۱ دقیقه طول نمی‌کشد. با تشکر از حمایت شما!"; 3 | "iRateGameMessage" ="اگر شما از بازی %@ لذت بردین، عالی میشه اگه با این برنامه در اپ‌استور امتیاز دهید! این کار بیشتر از ۱ دقیقه طول نمی‌کشد. با تشکر از حمایت شما!"; 4 | "iRateCancelButton" = "نه، با تشکر"; 5 | "iRateRateButton" = "می‌خوام امتیاز بدم"; 6 | "iRateRemindButton" = "بعدا یادم بنداز"; 7 | -------------------------------------------------------------------------------- /iRate/iRate.bundle/fr.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "Notez %@"; 2 | "iRateAppMessage" = "Si vous aimez utiliser %@, n'oubliez pas de donner votre avis sur l'App Store. Cela ne prend qu'une minute. Merci d'avance pour votre soutien !"; 3 | "iRateGameMessage" = "Si vous aimez jouer à %@, n'oubliez pas de donner votre avis sur l'App Store. Cela ne prend qu'une minute. Merci d'avance pour votre soutien !"; 4 | "iRateCancelButton" = "Non, merci"; 5 | "iRateRateButton" = "Noter maintenant"; 6 | "iRateRemindButton" = "Me le rappeler ultérieurement"; 7 | -------------------------------------------------------------------------------- /Examples/Events Demo/Classes/iRateViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // iRateViewController.m 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import "iRateViewController.h" 10 | #import "iRate.h" 11 | 12 | @implementation iRateViewController 13 | 14 | - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation 15 | { 16 | return YES; 17 | } 18 | 19 | - (IBAction)logEvent 20 | { 21 | [[iRate sharedInstance] logEvent:NO]; 22 | } 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /iRate/iRate.bundle/ur.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "کو ریٹ کیجیے %@"; 2 | "iRateAppMessage" = "اگر آپ نے %@ کو مفید پایا ہے تو کیا آپ اپنے قیمتی وقت میں سے چند لمحے نکال کر اس کو ریٹ کریں گے؟ اس میں ایک منٹ سے زیادہ نہیں لگے گا، آپ کے تعاون کا شکریہ!"; 3 | "iRateGameMessage" = "اگر آپ %@ کھیل کر محظوظ ہوئے ہیں تو کیا آپ اپنے قیمتی وقت میں سے چند لمحے نکال کر اس کو ریٹ کریں گے؟ اس میں ایک منٹ سے زیادہ نہیں لگے گا، آپ کے تعاون کا شکریہ!"; 4 | "iRateCancelButton" = "نہیں، شکریہ"; 5 | "iRateRateButton" = "ابھی ریٹ کیجیے"; 6 | "iRateRemindButton" = "مجھے بعد میں یاد دلائیں"; 7 | "iRateOkay" = "ٹھیک ہے"; 8 | -------------------------------------------------------------------------------- /Examples/Advanced Demo/iRateMacAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // iRateMacAppDelegate.h 3 | // iRateMac 4 | // 5 | // Created by Nick Lockwood on 06/02/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "iRate.h" 11 | 12 | 13 | @interface iRateMacAppDelegate : NSObject 14 | 15 | @property (weak) IBOutlet NSWindow *window; 16 | @property (weak) IBOutlet NSProgressIndicator *progressIndicator; 17 | @property (weak) IBOutlet NSTextField *label; 18 | 19 | - (IBAction)promptForRating:(id)sender; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /iRate/iRate.bundle/ur-IN.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "کو ریٹ کیجیے %@"; 2 | "iRateAppMessage" = "اگر آپ نے %@ کو مفید پایا ہے تو کیا آپ اپنے قیمتی وقت میں سے چند لمحے نکال کر اس کو ریٹ کریں گے؟ اس میں ایک منٹ سے زیادہ نہیں لگے گا، آپ کے تعاون کا شکریہ!"; 3 | "iRateGameMessage" = "اگر آپ %@ کھیل کر محظوظ ہوئے ہیں تو کیا آپ اپنے قیمتی وقت میں سے چند لمحے نکال کر اس کو ریٹ کریں گے؟ اس میں ایک منٹ سے زیادہ نہیں لگے گا، آپ کے تعاون کا شکریہ!"; 4 | "iRateCancelButton" = "نہیں، شکریہ"; 5 | "iRateRateButton" = "ابھی ریٹ کیجیے"; 6 | "iRateRemindButton" = "مجھے بعد میں یاد دلائیں"; 7 | "iRateOkay" = "ٹھیک ہے"; 8 | -------------------------------------------------------------------------------- /iRate/iRate.bundle/ur-PK.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | "iRateMessageTitle" = "کو ریٹ کیجیے %@"; 2 | "iRateAppMessage" = "اگر آپ نے %@ کو مفید پایا ہے تو کیا آپ اپنے قیمتی وقت میں سے چند لمحے نکال کر اس کو ریٹ کریں گے؟ اس میں ایک منٹ سے زیادہ نہیں لگے گا، آپ کے تعاون کا شکریہ!"; 3 | "iRateGameMessage" = "اگر آپ %@ کھیل کر محظوظ ہوئے ہیں تو کیا آپ اپنے قیمتی وقت میں سے چند لمحے نکال کر اس کو ریٹ کریں گے؟ اس میں ایک منٹ سے زیادہ نہیں لگے گا، آپ کے تعاون کا شکریہ!"; 4 | "iRateCancelButton" = "نہیں، شکریہ"; 5 | "iRateRateButton" = "ابھی ریٹ کیجیے"; 6 | "iRateRemindButton" = "مجھے بعد میں یاد دلائیں"; 7 | "iRateOkay" = "ٹھیک ہے"; 8 | -------------------------------------------------------------------------------- /iRate.podspec.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "iRate", 3 | "version": "1.11.4", 4 | "license": "zlib", 5 | "summary": "A handy class that prompts users of your iPhone or Mac App Store app to rate your application after using it for a while.", 6 | "homepage": "https://github.com/nicklockwood/iRate", 7 | "authors": "Nick Lockwood", 8 | "source": { 9 | "git": "https://github.com/nicklockwood/iRate.git", 10 | "tag": "1.11.4" 11 | }, 12 | "source_files": "iRate/iRate.{h,m}", 13 | "resources": "iRate/iRate.bundle", 14 | "requires_arc": true, 15 | "platforms": { 16 | "ios": "4.3", 17 | "osx": "10.6" 18 | } 19 | } -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemo/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // iPhoneDemo 4 | // 5 | // Created by Nick Lockwood on 12/10/2014. 6 | // Copyright (c) 2014 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | 11 | @interface ViewController () 12 | 13 | @end 14 | 15 | @implementation ViewController 16 | 17 | - (void)viewDidLoad { 18 | [super viewDidLoad]; 19 | // Do any additional setup after loading the view, typically from a nib. 20 | } 21 | 22 | - (void)didReceiveMemoryWarning { 23 | [super didReceiveMemoryWarning]; 24 | // Dispose of any resources that can be recreated. 25 | } 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Examples/Swift Demo/SwiftDemo/ViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.swift 3 | // SwiftDemo 4 | // 5 | // Created by Nick Lockwood on 12/10/2014. 6 | // Copyright (c) 2014 Charcoal Design. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class ViewController: UIViewController { 12 | 13 | override func viewDidLoad() { 14 | super.viewDidLoad() 15 | // Do any additional setup after loading the view, typically from a nib. 16 | } 17 | 18 | override func didReceiveMemoryWarning() { 19 | super.didReceiveMemoryWarning() 20 | // Dispose of any resources that can be recreated. 21 | } 22 | 23 | 24 | } 25 | 26 | -------------------------------------------------------------------------------- /Examples/Swift Demo/SwiftDemo/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemo/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /Examples/Mac Demo/iRateMacAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // iRateMacAppDelegate.m 3 | // iRateMac 4 | // 5 | // Created by Nick Lockwood on 04/02/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import "iRateMacAppDelegate.h" 10 | #import "iRate.h" 11 | 12 | 13 | @implementation iRateMacAppDelegate 14 | 15 | @synthesize window; 16 | 17 | + (void)initialize 18 | { 19 | //set the bundle ID. normally you wouldn't need to do this 20 | //as it is picked up automatically from your Info.plist file 21 | //but we want to test with an app that's actually on the store 22 | [iRate sharedInstance].applicationBundleID = @"com.charcoaldesign.RainbowBlocksLite"; 23 | [iRate sharedInstance].onlyPromptIfLatestVersion = NO; 24 | 25 | //enable preview mode 26 | [iRate sharedInstance].previewMode = YES; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemoTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.charcoaldesign.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /iRate/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | $(CURRENT_PROJECT_VERSION) 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /LICENCE.md: -------------------------------------------------------------------------------- 1 | iRate 2 | 3 | Version 1.11.4, May 5th, 2015 4 | 5 | Copyright (C) 2011 Charcoal Design 6 | 7 | This software is provided 'as-is', without any express or implied 8 | warranty. In no event will the authors be held liable for any damages 9 | arising from the use of this software. 10 | 11 | Permission is granted to anyone to use this software for any purpose, 12 | including commercial applications, and to alter it and redistribute it 13 | freely, subject to the following restrictions: 14 | 15 | 1. The origin of this software must not be misrepresented; you must not 16 | claim that you wrote the original software. If you use this software 17 | in a product, an acknowledgment in the product documentation would be 18 | appreciated but is not required. 19 | 20 | 2. Altered source versions must be plainly marked as such, and must not be 21 | misrepresented as being the original software. 22 | 23 | 3. This notice may not be removed or altered from any source distribution. -------------------------------------------------------------------------------- /Examples/Events Demo/iRate-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIconFile 12 | 13 | CFBundleIdentifier 14 | com.charcoaldesign.${PRODUCT_NAME:rfc1034identifier} 15 | CFBundleInfoDictionaryVersion 16 | 6.0 17 | CFBundleName 18 | ${PRODUCT_NAME} 19 | CFBundlePackageType 20 | APPL 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.1 25 | LSRequiresIPhoneOS 26 | 27 | NSMainNibFile 28 | MainWindow 29 | 30 | 31 | -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemo/AppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.m 3 | // iPhoneDemo 4 | // 5 | // Created by Nick Lockwood on 12/10/2014. 6 | // Copyright (c) 2014 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import "AppDelegate.h" 10 | #import "iRate.h" 11 | 12 | @implementation AppDelegate 13 | 14 | @synthesize window; 15 | 16 | + (void)initialize 17 | { 18 | //set the bundle ID. normally you wouldn't need to do this 19 | //as it is picked up automatically from your Info.plist file 20 | //but we want to test with an app that's actually on the store 21 | [iRate sharedInstance].applicationBundleID = @"com.charcoaldesign.rainbowblocks-free"; 22 | [iRate sharedInstance].onlyPromptIfLatestVersion = NO; 23 | 24 | //enable preview mode 25 | [iRate sharedInstance].previewMode = YES; 26 | } 27 | 28 | - (BOOL)application:(__unused UIApplication *)application didFinishLaunchingWithOptions:(__unused NSDictionary *)launchOptions 29 | { 30 | // Override point for customization after application launch. 31 | return YES; 32 | } 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemoTests/iPhoneDemoTests.m: -------------------------------------------------------------------------------- 1 | // 2 | // iPhoneDemoTests.m 3 | // iPhoneDemoTests 4 | // 5 | // Created by Nick Lockwood on 12/10/2014. 6 | // Copyright (c) 2014 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface iPhoneDemoTests : XCTestCase 13 | 14 | @end 15 | 16 | @implementation iPhoneDemoTests 17 | 18 | - (void)setUp { 19 | [super setUp]; 20 | // Put setup code here. This method is called before the invocation of each test method in the class. 21 | } 22 | 23 | - (void)tearDown { 24 | // Put teardown code here. This method is called after the invocation of each test method in the class. 25 | [super tearDown]; 26 | } 27 | 28 | - (void)testExample { 29 | // This is an example of a functional test case. 30 | XCTAssert(YES, @"Pass"); 31 | } 32 | 33 | - (void)testPerformanceExample { 34 | // This is an example of a performance test case. 35 | [self measureBlock:^{ 36 | // Put the code you want to measure the time of here. 37 | }]; 38 | } 39 | 40 | @end 41 | -------------------------------------------------------------------------------- /Examples/Mac Demo/iRateMac-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | com.charcoaldesign.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | LSMinimumSystemVersion 26 | ${MACOSX_DEPLOYMENT_TARGET} 27 | NSMainNibFile 28 | MainMenu 29 | NSPrincipalClass 30 | NSApplication 31 | 32 | 33 | -------------------------------------------------------------------------------- /Examples/Advanced Demo/iRateAdvanced-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | com.charcoaldesign.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.1 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.1 25 | LSMinimumSystemVersion 26 | ${MACOSX_DEPLOYMENT_TARGET} 27 | NSMainNibFile 28 | MainMenu 29 | NSPrincipalClass 30 | NSApplication 31 | 32 | 33 | -------------------------------------------------------------------------------- /Examples/Swift Demo/SwiftDemo/AppDelegate.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.swift 3 | // SwiftDemo 4 | // 5 | // Created by Nick Lockwood on 12/10/2014. 6 | // Copyright (c) 2014 Charcoal Design. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | @UIApplicationMain 12 | class AppDelegate: UIResponder, UIApplicationDelegate { 13 | 14 | var window: UIWindow? 15 | 16 | override class func initialize() -> Void { 17 | 18 | //set the bundle ID. normally you wouldn't need to do this 19 | //as it is picked up automatically from your Info.plist file 20 | //but we want to test with an app that's actually on the store 21 | iRate.sharedInstance().applicationBundleID = "com.charcoaldesign.rainbowblocks-free" 22 | iRate.sharedInstance().onlyPromptIfLatestVersion = false 23 | 24 | //enable preview mode 25 | iRate.sharedInstance().previewMode = true 26 | } 27 | 28 | func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { 29 | // Override point for customization after application launch. 30 | return true 31 | } 32 | } 33 | 34 | -------------------------------------------------------------------------------- /Examples/Zero Config Demo/Classes/iRateAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // iRateAppDelegate.m 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import "iRateAppDelegate.h" 10 | #import "iRateViewController.h" 11 | 12 | 13 | @implementation iRateAppDelegate 14 | 15 | @synthesize window; 16 | @synthesize viewController; 17 | 18 | 19 | //absolutely no configuration whatsoever! 20 | //the app details are retrieved directly 21 | //from iTunes using the app's bundle ID 22 | 23 | //NOTE: you won't actually see anything until you've had the example installed 24 | //for 10 days and launched it 10 times. You can simulate this by adjusting 25 | //the date on your device if you wish to verify that it works 26 | 27 | 28 | #pragma mark - 29 | #pragma mark Application lifecycle 30 | 31 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 32 | { 33 | window.rootViewController = viewController; 34 | // Add the view controller's view to the window and display. 35 | [window addSubview:viewController.view]; 36 | [window makeKeyAndVisible]; 37 | 38 | return YES; 39 | } 40 | 41 | @end 42 | -------------------------------------------------------------------------------- /Examples/Zero Config Demo/ZeroConfig-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIconFile 12 | 13 | CFBundleIdentifier 14 | com.charcoaldesign.rainbowblocks-free 15 | CFBundleInfoDictionaryVersion 16 | 6.0 17 | CFBundleName 18 | ${PRODUCT_NAME} 19 | CFBundlePackageType 20 | APPL 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 999999 25 | LSRequiresIPhoneOS 26 | 27 | NSMainNibFile 28 | MainWindow 29 | UISupportedInterfaceOrientations 30 | 31 | UIInterfaceOrientationPortrait 32 | UIInterfaceOrientationPortraitUpsideDown 33 | UIInterfaceOrientationLandscapeLeft 34 | UIInterfaceOrientationLandscapeRight 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /Examples/iPhone Custom UI Demo/iRate-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIconFile 12 | 13 | CFBundleIdentifier 14 | com.charcoaldesign.${PRODUCT_NAME:rfc1034identifier} 15 | CFBundleInfoDictionaryVersion 16 | 6.0 17 | CFBundleName 18 | ${PRODUCT_NAME} 19 | CFBundlePackageType 20 | APPL 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.1 25 | LSRequiresIPhoneOS 26 | 27 | NSMainNibFile 28 | MainWindow 29 | UISupportedInterfaceOrientations 30 | 31 | UIInterfaceOrientationPortrait 32 | UIInterfaceOrientationPortraitUpsideDown 33 | UIInterfaceOrientationLandscapeLeft 34 | UIInterfaceOrientationLandscapeRight 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /Examples/Swift Demo/SwiftDemo/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.charcoaldesign.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemo/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.charcoaldesign.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemo/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- 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 | -------------------------------------------------------------------------------- /Examples/Swift Demo/SwiftDemo/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- 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 | -------------------------------------------------------------------------------- /Examples/Events Demo/Classes/iRateAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // iRateAppDelegate.m 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import "iRateAppDelegate.h" 10 | #import "iRateViewController.h" 11 | #import "iRate.h" 12 | 13 | 14 | @implementation iRateAppDelegate 15 | 16 | @synthesize window; 17 | @synthesize viewController; 18 | 19 | 20 | #pragma mark - 21 | #pragma mark Application lifecycle 22 | 23 | + (void)initialize 24 | { 25 | //set the bundle ID. normally you wouldn't need to do this 26 | //as it is picked up automatically from your Info.plist file 27 | //but we want to test with an app that's actually on the store 28 | [iRate sharedInstance].applicationBundleID = @"com.charcoaldesign.rainbowblocks-free"; 29 | [iRate sharedInstance].onlyPromptIfLatestVersion = NO; 30 | 31 | //set events count (default is 10) 32 | [iRate sharedInstance].eventsUntilPrompt = 5; 33 | 34 | //disable minimum day limit and reminder periods 35 | [iRate sharedInstance].daysUntilPrompt = 0; 36 | [iRate sharedInstance].remindPeriod = 0; 37 | } 38 | 39 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 40 | { 41 | // Override point for customization after application launch. 42 | 43 | // Add the view controller's view to the window and display. 44 | [window addSubview:viewController.view]; 45 | [window makeKeyAndVisible]; 46 | 47 | return YES; 48 | } 49 | 50 | #pragma mark - 51 | #pragma mark iRate delegate methods 52 | 53 | - (void)iRateUserDidRequestReminderToRateApp 54 | { 55 | //reset event count after every 5 (for demo purposes) 56 | [iRate sharedInstance].eventCount = 0; 57 | } 58 | 59 | #pragma mark - 60 | #pragma mark Memory management 61 | 62 | 63 | 64 | @end 65 | -------------------------------------------------------------------------------- /Examples/Advanced Demo/iRateMacAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // iRateMacAppDelegate.m 3 | // iRateMac 4 | // 5 | // Created by Nick Lockwood on 06/02/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import "iRateMacAppDelegate.h" 10 | #import "iRate.h" 11 | 12 | 13 | @implementation iRateMacAppDelegate 14 | 15 | @synthesize window; 16 | @synthesize progressIndicator; 17 | @synthesize label; 18 | 19 | + (void)initialize 20 | { 21 | //set the bundle ID. normally you wouldn't need to do this 22 | //as it is picked up automatically from your Info.plist file 23 | //but we want to test with an app that's actually on the store 24 | [iRate sharedInstance].applicationBundleID = @"com.charcoaldesign.RainbowBlocksLite"; 25 | 26 | //enable preview mode 27 | [iRate sharedInstance].previewMode = YES; 28 | 29 | //prevent automatic prompt 30 | [iRate sharedInstance].promptAtLaunch = NO; 31 | } 32 | 33 | - (void)applicationDidFinishLaunching:(NSNotification *)aNotification 34 | { 35 | //set myself as iRate delegate 36 | //you don't actually need to set this if you 37 | //are using the AppDelegate as your iRate delegate 38 | //as that is the default iRate delegate anyway 39 | [iRate sharedInstance].delegate = self; 40 | } 41 | 42 | - (IBAction)promptForRating:(id)sender; 43 | { 44 | //perform manual check 45 | [[iRate sharedInstance] promptIfNetworkAvailable]; 46 | [label setStringValue:@"Connecting to App Store..."]; 47 | [progressIndicator startAnimation:self]; 48 | } 49 | 50 | #pragma mark - 51 | #pragma mark iVersionDelegate methods 52 | 53 | - (void)iRateCouldNotConnectToAppStore:(NSError *)error 54 | { 55 | [label setStringValue:[error localizedDescription]]; 56 | [progressIndicator stopAnimation:self]; 57 | } 58 | 59 | - (BOOL)iRateShouldPromptForRating 60 | { 61 | //don't show prompt, just open app store 62 | [[iRate sharedInstance] openRatingsPageInAppStore]; 63 | [label setStringValue:@"Connected."]; 64 | [progressIndicator stopAnimation:self]; 65 | return NO; 66 | } 67 | 68 | @end 69 | -------------------------------------------------------------------------------- /Examples/iPhone Custom UI Demo/Classes/iRateAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // iRateAppDelegate.m 3 | // iRate 4 | // 5 | // Created by Nick Lockwood on 26/01/2011. 6 | // Copyright 2011 Charcoal Design. All rights reserved. 7 | // 8 | 9 | #import "iRateAppDelegate.h" 10 | #import "iRate.h" 11 | 12 | 13 | @interface iRateAppDelegate () 14 | 15 | @property (nonatomic, strong) UIAlertView *alertView; 16 | 17 | @end 18 | 19 | 20 | @implementation iRateAppDelegate 21 | 22 | #pragma mark - 23 | #pragma mark Application lifecycle 24 | 25 | + (void)initialize 26 | { 27 | //set the bundle ID. normally you wouldn't need to do this 28 | //as it is picked up automatically from your Info.plist file 29 | //but we want to test with an app that's actually on the store 30 | [iRate sharedInstance].applicationBundleID = @"com.charcoaldesign.rainbowblocks-free"; 31 | [iRate sharedInstance].onlyPromptIfLatestVersion = NO; 32 | 33 | //enable preview mode 34 | [iRate sharedInstance].previewMode = YES; 35 | } 36 | 37 | - (BOOL)application:(__unused UIApplication *)application didFinishLaunchingWithOptions:(__unused NSDictionary *)launchOptions 38 | { 39 | [self.window makeKeyAndVisible]; 40 | return YES; 41 | } 42 | 43 | //in this example, we're implementing our own modal alert, so 44 | //we use the following delegate methods to intercept and override 45 | //the standard alert behavior 46 | 47 | - (BOOL)iRateShouldPromptForRating 48 | { 49 | if (!self.alertView) 50 | { 51 | self.alertView = [[UIAlertView alloc] initWithTitle:@"Rate Me!" message:@"I'm a completely custom rating dialog. Awesome, right?" delegate:self cancelButtonTitle:@"No Thanks" otherButtonTitles:@"Rate Now", @"Maybe Later", @"Open Web Page", nil]; 52 | 53 | [self.alertView show]; 54 | } 55 | return NO; 56 | } 57 | 58 | - (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex 59 | { 60 | if (buttonIndex == alertView.cancelButtonIndex) 61 | { 62 | //ignore this version 63 | [iRate sharedInstance].declinedThisVersion = YES; 64 | } 65 | else if (buttonIndex == 1) // rate now 66 | { 67 | //mark as rated 68 | [iRate sharedInstance].ratedThisVersion = YES; 69 | 70 | //launch app store 71 | [[iRate sharedInstance] openRatingsPageInAppStore]; 72 | } 73 | else if (buttonIndex == 2) // maybe later 74 | { 75 | //remind later 76 | [iRate sharedInstance].lastReminded = [NSDate date]; 77 | } 78 | else if (buttonIndex == 3) // open web page 79 | { 80 | NSURL *url = [NSURL URLWithString:@"http://www.apple.com"]; 81 | [[UIApplication sharedApplication] openURL:url]; 82 | } 83 | 84 | self.alertView = nil; 85 | } 86 | 87 | 88 | @end 89 | -------------------------------------------------------------------------------- /iRate.xcodeproj/xcshareddata/xcschemes/iRate.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 34 | 35 | 45 | 46 | 52 | 53 | 54 | 55 | 56 | 57 | 63 | 64 | 70 | 71 | 72 | 73 | 75 | 76 | 79 | 80 | 81 | -------------------------------------------------------------------------------- /iRate.xcodeproj/xcshareddata/xcschemes/iRate-OSX.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 34 | 35 | 45 | 46 | 52 | 53 | 54 | 55 | 56 | 57 | 63 | 64 | 70 | 71 | 72 | 73 | 75 | 76 | 79 | 80 | 81 | -------------------------------------------------------------------------------- /Examples/Zero Config Demo/ZeroConfig.xcodeproj/xcshareddata/xcschemes/ZeroConfig.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 39 | 40 | 41 | 42 | 51 | 52 | 58 | 59 | 60 | 61 | 62 | 63 | 69 | 70 | 76 | 77 | 78 | 79 | 81 | 82 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /Examples/Swift Demo/SwiftDemo/Base.lproj/LaunchScreen.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 20 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemo/Base.lproj/LaunchScreen.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 20 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /iRate/iRate.h: -------------------------------------------------------------------------------- 1 | // 2 | // iRate.h 3 | // 4 | // Version 1.11.4 5 | // 6 | // Created by Nick Lockwood on 26/01/2011. 7 | // Copyright 2011 Charcoal Design 8 | // 9 | // Distributed under the permissive zlib license 10 | // Get the latest version from here: 11 | // 12 | // https://github.com/nicklockwood/iRate 13 | // 14 | // This software is provided 'as-is', without any express or implied 15 | // warranty. In no event will the authors be held liable for any damages 16 | // arising from the use of this software. 17 | // 18 | // Permission is granted to anyone to use this software for any purpose, 19 | // including commercial applications, and to alter it and redistribute it 20 | // freely, subject to the following restrictions: 21 | // 22 | // 1. The origin of this software must not be misrepresented; you must not 23 | // claim that you wrote the original software. If you use this software 24 | // in a product, an acknowledgment in the product documentation would be 25 | // appreciated but is not required. 26 | // 27 | // 2. Altered source versions must be plainly marked as such, and must not be 28 | // misrepresented as being the original software. 29 | // 30 | // 3. This notice may not be removed or altered from any source distribution. 31 | // 32 | 33 | 34 | #pragma clang diagnostic push 35 | #pragma clang diagnostic ignored "-Wobjc-missing-property-synthesis" 36 | 37 | 38 | #import 39 | #undef weak_delegate 40 | #if __has_feature(objc_arc_weak) && \ 41 | (TARGET_OS_IPHONE || __MAC_OS_X_VERSION_MIN_REQUIRED >= __MAC_10_8) 42 | #define weak_delegate weak 43 | #else 44 | #define weak_delegate unsafe_unretained 45 | #endif 46 | 47 | 48 | #import 49 | #if TARGET_OS_IPHONE 50 | #import 51 | #define IRATE_EXTERN UIKIT_EXTERN 52 | #else 53 | #import 54 | #define IRATE_EXTERN APPKIT_EXTERN 55 | #endif 56 | 57 | //! Project version number for iRate. 58 | FOUNDATION_EXPORT double iRateVersionNumber; 59 | 60 | //! Project version string for iRate. 61 | FOUNDATION_EXPORT const unsigned char iRateVersionString[]; 62 | 63 | IRATE_EXTERN NSUInteger const iRateAppStoreGameGenreID; 64 | IRATE_EXTERN NSString *const iRateErrorDomain; 65 | 66 | //localisation string keys 67 | IRATE_EXTERN NSString *const iRateMessageTitleKey; //iRateMessageTitle 68 | IRATE_EXTERN NSString *const iRateAppMessageKey; //iRateAppMessage 69 | IRATE_EXTERN NSString *const iRateGameMessageKey; //iRateGameMessage 70 | IRATE_EXTERN NSString *const iRateUpdateMessageKey; //iRateUpdateMessage 71 | IRATE_EXTERN NSString *const iRateCancelButtonKey; //iRateCancelButton 72 | IRATE_EXTERN NSString *const iRateRemindButtonKey; //iRateRemindButton 73 | IRATE_EXTERN NSString *const iRateRateButtonKey; //iRateRateButton 74 | 75 | //notification keys 76 | IRATE_EXTERN NSString *const iRateCouldNotConnectToAppStore; 77 | IRATE_EXTERN NSString *const iRateDidDetectAppUpdate; 78 | IRATE_EXTERN NSString *const iRateDidPromptForRating; 79 | IRATE_EXTERN NSString *const iRateUserDidAttemptToRateApp; 80 | IRATE_EXTERN NSString *const iRateUserDidDeclineToRateApp; 81 | IRATE_EXTERN NSString *const iRateUserDidRequestReminderToRateApp; 82 | IRATE_EXTERN NSString *const iRateDidOpenAppStore; 83 | 84 | 85 | typedef NS_ENUM(NSUInteger, iRateErrorCode) 86 | { 87 | iRateErrorBundleIdDoesNotMatchAppStore = 1, 88 | iRateErrorApplicationNotFoundOnAppStore, 89 | iRateErrorApplicationIsNotLatestVersion, 90 | iRateErrorCouldNotOpenRatingPageURL 91 | }; 92 | 93 | 94 | @protocol iRateDelegate 95 | @optional 96 | 97 | - (void)iRateCouldNotConnectToAppStore:(NSError *)error; 98 | - (void)iRateDidDetectAppUpdate; 99 | - (BOOL)iRateShouldPromptForRating; 100 | - (void)iRateDidPromptForRating; 101 | - (void)iRateUserDidAttemptToRateApp; 102 | - (void)iRateUserDidDeclineToRateApp; 103 | - (void)iRateUserDidRequestReminderToRateApp; 104 | - (BOOL)iRateShouldOpenAppStore; 105 | - (void)iRateDidOpenAppStore; 106 | 107 | @end 108 | 109 | 110 | @interface iRate : NSObject 111 | 112 | + (instancetype)sharedInstance; 113 | 114 | //app store ID - this is only needed if your 115 | //bundle ID is not unique between iOS and Mac app stores 116 | @property (nonatomic, assign) NSUInteger appStoreID; 117 | 118 | //application details - these are set automatically 119 | @property (nonatomic, assign) NSUInteger appStoreGenreID; 120 | @property (nonatomic, copy) NSString *appStoreCountry; 121 | @property (nonatomic, copy) NSString *applicationName; 122 | @property (nonatomic, copy) NSString *applicationVersion; 123 | @property (nonatomic, copy) NSString *applicationBundleID; 124 | 125 | //usage settings - these have sensible defaults 126 | @property (nonatomic, assign) NSUInteger usesUntilPrompt; 127 | @property (nonatomic, assign) NSUInteger eventsUntilPrompt; 128 | @property (nonatomic, assign) float daysUntilPrompt; 129 | @property (nonatomic, assign) float usesPerWeekForPrompt; 130 | @property (nonatomic, assign) float remindPeriod; 131 | 132 | //message text, you may wish to customise these 133 | @property (nonatomic, copy) NSString *messageTitle; 134 | @property (nonatomic, copy) NSString *message; 135 | @property (nonatomic, copy) NSString *updateMessage; 136 | @property (nonatomic, copy) NSString *cancelButtonLabel; 137 | @property (nonatomic, copy) NSString *remindButtonLabel; 138 | @property (nonatomic, copy) NSString *rateButtonLabel; 139 | 140 | //debugging and prompt overrides 141 | @property (nonatomic, assign) BOOL useUIAlertControllerIfAvailable; 142 | @property (nonatomic, assign) BOOL useAllAvailableLanguages; 143 | @property (nonatomic, assign) BOOL promptForNewVersionIfUserRated; 144 | @property (nonatomic, assign) BOOL onlyPromptIfLatestVersion; 145 | @property (nonatomic, assign) BOOL onlyPromptIfMainWindowIsAvailable; 146 | @property (nonatomic, assign) BOOL promptAtLaunch; 147 | @property (nonatomic, assign) BOOL verboseLogging; 148 | @property (nonatomic, assign) BOOL previewMode; 149 | 150 | //advanced properties for implementing custom behaviour 151 | @property (nonatomic, strong) NSURL *ratingsURL; 152 | @property (nonatomic, strong) NSDate *firstUsed; 153 | @property (nonatomic, strong) NSDate *lastReminded; 154 | @property (nonatomic, assign) NSUInteger usesCount; 155 | @property (nonatomic, assign) NSUInteger eventCount; 156 | @property (nonatomic, readonly) float usesPerWeek; 157 | @property (nonatomic, assign) BOOL declinedThisVersion; 158 | @property (nonatomic, readonly) BOOL declinedAnyVersion; 159 | @property (nonatomic, assign) BOOL ratedThisVersion; 160 | @property (nonatomic, readonly) BOOL ratedAnyVersion; 161 | @property (nonatomic, weak_delegate) id delegate; 162 | 163 | //manually control behaviour 164 | - (BOOL)shouldPromptForRating; 165 | - (void)promptForRating; 166 | - (void)promptIfNetworkAvailable; 167 | - (void)promptIfAllCriteriaMet; 168 | - (void)openRatingsPageInAppStore; 169 | - (void)logEvent:(BOOL)deferPrompt; 170 | // We have exposed this method to fit our requirements (UAC's) and made a pull request at GitHub. 171 | - (void)remindLater; 172 | 173 | @end 174 | 175 | 176 | #pragma clang diagnostic pop 177 | -------------------------------------------------------------------------------- /Examples/Zero Config Demo/iRateViewController.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 1056 5 | 10J567 6 | 823 7 | 1038.35 8 | 462.00 9 | 10 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 11 | 132 12 | 13 | 14 | YES 15 | 16 | 17 | YES 18 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 19 | 20 | 21 | YES 22 | 23 | YES 24 | 25 | 26 | YES 27 | 28 | 29 | 30 | YES 31 | 32 | IBFilesOwner 33 | IBCocoaTouchFramework 34 | 35 | 36 | IBFirstResponder 37 | IBCocoaTouchFramework 38 | 39 | 40 | 41 | 274 42 | {320, 460} 43 | 44 | 3 45 | MC43NQA 46 | 47 | 2 48 | 49 | 50 | NO 51 | 52 | IBCocoaTouchFramework 53 | 54 | 55 | 56 | 57 | YES 58 | 59 | 60 | view 61 | 62 | 63 | 64 | 7 65 | 66 | 67 | 68 | 69 | YES 70 | 71 | 0 72 | 73 | 74 | 75 | 76 | 77 | -1 78 | 79 | 80 | File's Owner 81 | 82 | 83 | -2 84 | 85 | 86 | 87 | 88 | 6 89 | 90 | 91 | 92 | 93 | 94 | 95 | YES 96 | 97 | YES 98 | -1.CustomClassName 99 | -2.CustomClassName 100 | 6.IBEditorWindowLastContentRect 101 | 6.IBPluginDependency 102 | 103 | 104 | YES 105 | iRateViewController 106 | UIResponder 107 | {{239, 654}, {320, 480}} 108 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 109 | 110 | 111 | 112 | YES 113 | 114 | 115 | YES 116 | 117 | 118 | 119 | 120 | YES 121 | 122 | 123 | YES 124 | 125 | 126 | 127 | 7 128 | 129 | 130 | 131 | YES 132 | 133 | iRateViewController 134 | UIViewController 135 | 136 | IBUserSource 137 | 138 | 139 | 140 | 141 | 142 | 0 143 | IBCocoaTouchFramework 144 | 145 | com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3 146 | 147 | 148 | YES 149 | iVersion.xcodeproj 150 | 3 151 | 132 152 | 153 | 154 | -------------------------------------------------------------------------------- /Examples/iPhone Custom UI Demo/iRateViewController.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 1056 5 | 10J567 6 | 823 7 | 1038.35 8 | 462.00 9 | 10 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 11 | 132 12 | 13 | 14 | YES 15 | 16 | 17 | YES 18 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 19 | 20 | 21 | YES 22 | 23 | YES 24 | 25 | 26 | YES 27 | 28 | 29 | 30 | YES 31 | 32 | IBFilesOwner 33 | IBCocoaTouchFramework 34 | 35 | 36 | IBFirstResponder 37 | IBCocoaTouchFramework 38 | 39 | 40 | 41 | 274 42 | {320, 460} 43 | 44 | 3 45 | MC43NQA 46 | 47 | 2 48 | 49 | 50 | NO 51 | 52 | IBCocoaTouchFramework 53 | 54 | 55 | 56 | 57 | YES 58 | 59 | 60 | view 61 | 62 | 63 | 64 | 7 65 | 66 | 67 | 68 | 69 | YES 70 | 71 | 0 72 | 73 | 74 | 75 | 76 | 77 | -1 78 | 79 | 80 | File's Owner 81 | 82 | 83 | -2 84 | 85 | 86 | 87 | 88 | 6 89 | 90 | 91 | 92 | 93 | 94 | 95 | YES 96 | 97 | YES 98 | -1.CustomClassName 99 | -2.CustomClassName 100 | 6.IBEditorWindowLastContentRect 101 | 6.IBPluginDependency 102 | 103 | 104 | YES 105 | iRateViewController 106 | UIResponder 107 | {{239, 654}, {320, 480}} 108 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 109 | 110 | 111 | 112 | YES 113 | 114 | 115 | YES 116 | 117 | 118 | 119 | 120 | YES 121 | 122 | 123 | YES 124 | 125 | 126 | 127 | 7 128 | 129 | 130 | 131 | YES 132 | 133 | iRateViewController 134 | UIViewController 135 | 136 | IBUserSource 137 | 138 | 139 | 140 | 141 | 142 | 0 143 | IBCocoaTouchFramework 144 | 145 | com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3 146 | 147 | 148 | YES 149 | iVersion.xcodeproj 150 | 3 151 | 132 152 | 153 | 154 | -------------------------------------------------------------------------------- /Examples/iPhone Custom UI Demo/MainWindow.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 1552 5 | 12E55 6 | 3084 7 | 1187.39 8 | 626.00 9 | 10 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 11 | 2083 12 | 13 | 14 | YES 15 | IBProxyObject 16 | IBUICustomObject 17 | IBUIViewController 18 | IBUIWindow 19 | 20 | 21 | YES 22 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 23 | 24 | 25 | PluginDependencyRecalculationVersion 26 | 27 | 28 | 29 | YES 30 | 31 | IBFilesOwner 32 | IBCocoaTouchFramework 33 | 34 | 35 | IBFirstResponder 36 | IBCocoaTouchFramework 37 | 38 | 39 | IBCocoaTouchFramework 40 | 41 | 42 | iRateViewController 43 | 44 | 45 | 1 46 | 1 47 | 48 | IBCocoaTouchFramework 49 | NO 50 | 51 | 52 | 53 | 292 54 | {320, 480} 55 | 56 | 57 | 58 | 1 59 | MSAxIDEAA 60 | 61 | NO 62 | NO 63 | 64 | IBCocoaTouchFramework 65 | YES 66 | 67 | 68 | 69 | 70 | YES 71 | 72 | 73 | delegate 74 | 75 | 76 | 77 | 4 78 | 79 | 80 | 81 | window 82 | 83 | 84 | 85 | 14 86 | 87 | 88 | 89 | rootViewController 90 | 91 | 92 | 93 | 16 94 | 95 | 96 | 97 | 98 | YES 99 | 100 | 0 101 | 102 | YES 103 | 104 | 105 | 106 | 107 | 108 | -1 109 | 110 | 111 | File's Owner 112 | 113 | 114 | 3 115 | 116 | 117 | iVersion App Delegate 118 | 119 | 120 | -2 121 | 122 | 123 | 124 | 125 | 10 126 | 127 | 128 | 129 | 130 | 12 131 | 132 | 133 | 134 | 135 | 136 | 137 | YES 138 | 139 | YES 140 | -1.CustomClassName 141 | -1.IBPluginDependency 142 | -2.CustomClassName 143 | -2.IBPluginDependency 144 | 10.CustomClassName 145 | 10.IBPluginDependency 146 | 12.IBPluginDependency 147 | 3.CustomClassName 148 | 3.IBPluginDependency 149 | 150 | 151 | YES 152 | UIApplication 153 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 154 | UIResponder 155 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 156 | iRateViewController 157 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 158 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 159 | iRateAppDelegate 160 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 161 | 162 | 163 | 164 | YES 165 | 166 | 167 | 168 | 169 | 170 | YES 171 | 172 | 173 | 174 | 175 | 16 176 | 177 | 178 | 179 | YES 180 | 181 | iRateAppDelegate 182 | NSObject 183 | 184 | window 185 | UIWindow 186 | 187 | 188 | window 189 | 190 | window 191 | UIWindow 192 | 193 | 194 | 195 | IBProjectSource 196 | ./Classes/iRateAppDelegate.h 197 | 198 | 199 | 200 | iRateViewController 201 | UIViewController 202 | 203 | IBProjectSource 204 | ./Classes/iRateViewController.h 205 | 206 | 207 | 208 | 209 | 0 210 | IBCocoaTouchFramework 211 | 212 | com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS 213 | 214 | 215 | 216 | com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3 217 | 218 | 219 | YES 220 | 3 221 | 2083 222 | 223 | 224 | -------------------------------------------------------------------------------- /Examples/Events Demo/MainWindow.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 1536 5 | 12B19 6 | 2840 7 | 1187 8 | 624.00 9 | 10 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 11 | 1926 12 | 13 | 14 | YES 15 | IBProxyObject 16 | IBUICustomObject 17 | IBUIViewController 18 | IBUIWindow 19 | 20 | 21 | YES 22 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 23 | 24 | 25 | PluginDependencyRecalculationVersion 26 | 27 | 28 | 29 | YES 30 | 31 | IBFilesOwner 32 | IBCocoaTouchFramework 33 | 34 | 35 | IBFirstResponder 36 | IBCocoaTouchFramework 37 | 38 | 39 | IBCocoaTouchFramework 40 | 41 | 42 | iRateViewController 43 | 44 | 45 | 1 46 | 1 47 | 48 | IBCocoaTouchFramework 49 | NO 50 | 51 | 52 | 53 | 292 54 | {320, 480} 55 | 56 | 1 57 | MSAxIDEAA 58 | 59 | NO 60 | NO 61 | 62 | IBCocoaTouchFramework 63 | YES 64 | 65 | 66 | 67 | 68 | YES 69 | 70 | 71 | delegate 72 | 73 | 74 | 75 | 4 76 | 77 | 78 | 79 | viewController 80 | 81 | 82 | 83 | 11 84 | 85 | 86 | 87 | window 88 | 89 | 90 | 91 | 14 92 | 93 | 94 | 95 | rootViewController 96 | 97 | 98 | 99 | 16 100 | 101 | 102 | 103 | 104 | YES 105 | 106 | 0 107 | 108 | YES 109 | 110 | 111 | 112 | 113 | 114 | -1 115 | 116 | 117 | File's Owner 118 | 119 | 120 | 3 121 | 122 | 123 | iVersion App Delegate 124 | 125 | 126 | -2 127 | 128 | 129 | 130 | 131 | 10 132 | 133 | 134 | 135 | 136 | 12 137 | 138 | 139 | 140 | 141 | 142 | 143 | YES 144 | 145 | YES 146 | -1.CustomClassName 147 | -1.IBPluginDependency 148 | -2.CustomClassName 149 | -2.IBPluginDependency 150 | 10.CustomClassName 151 | 10.IBPluginDependency 152 | 12.IBPluginDependency 153 | 3.CustomClassName 154 | 3.IBPluginDependency 155 | 156 | 157 | YES 158 | UIApplication 159 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 160 | UIResponder 161 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 162 | iRateViewController 163 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 164 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 165 | iRateAppDelegate 166 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 167 | 168 | 169 | 170 | YES 171 | 172 | 173 | 174 | 175 | 176 | YES 177 | 178 | 179 | 180 | 181 | 16 182 | 183 | 184 | 185 | YES 186 | 187 | iRateAppDelegate 188 | NSObject 189 | 190 | YES 191 | 192 | YES 193 | viewController 194 | window 195 | 196 | 197 | YES 198 | iRateViewController 199 | UIWindow 200 | 201 | 202 | 203 | YES 204 | 205 | YES 206 | viewController 207 | window 208 | 209 | 210 | YES 211 | 212 | viewController 213 | iRateViewController 214 | 215 | 216 | window 217 | UIWindow 218 | 219 | 220 | 221 | 222 | IBProjectSource 223 | ./Classes/iRateAppDelegate.h 224 | 225 | 226 | 227 | iRateViewController 228 | UIViewController 229 | 230 | logEvent 231 | id 232 | 233 | 234 | logEvent 235 | 236 | logEvent 237 | id 238 | 239 | 240 | 241 | IBProjectSource 242 | ./Classes/iRateViewController.h 243 | 244 | 245 | 246 | 247 | 0 248 | IBCocoaTouchFramework 249 | 250 | com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS 251 | 252 | 253 | 254 | com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3 255 | 256 | 257 | YES 258 | 3 259 | 1926 260 | 261 | 262 | -------------------------------------------------------------------------------- /Examples/Advanced Demo/iRateAdvanced.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 1DDD58160DA1D0A300B32029 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1DDD58140DA1D0A300B32029 /* MainMenu.xib */; }; 11 | 256AC3DA0F4B6AC300CF3369 /* iRateMacAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 256AC3D90F4B6AC300CF3369 /* iRateMacAppDelegate.m */; }; 12 | 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; 13 | 8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; }; 14 | 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; 15 | B205F22F1462AC6600B69B0D /* iRate.m in Sources */ = {isa = PBXBuildFile; fileRef = B205F22E1462AC6600B69B0D /* iRate.m */; }; 16 | /* End PBXBuildFile section */ 17 | 18 | /* Begin PBXFileReference section */ 19 | 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; 20 | 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; 21 | 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = ""; }; 22 | 1DDD58150DA1D0A300B32029 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/MainMenu.xib; sourceTree = ""; }; 23 | 256AC3D80F4B6AC300CF3369 /* iRateMacAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRateMacAppDelegate.h; sourceTree = ""; }; 24 | 256AC3D90F4B6AC300CF3369 /* iRateMacAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iRateMacAppDelegate.m; sourceTree = ""; }; 25 | 256AC3F00F4B6AF500CF3369 /* iRateAdvanced_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRateAdvanced_Prefix.pch; sourceTree = ""; }; 26 | 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 27 | 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; 28 | 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; 29 | 8D1107310486CEB800E47090 /* iRateAdvanced-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "iRateAdvanced-Info.plist"; sourceTree = ""; }; 30 | 8D1107320486CEB800E47090 /* iRateAdvanced.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = iRateAdvanced.app; sourceTree = BUILT_PRODUCTS_DIR; }; 31 | B205F22D1462AC6600B69B0D /* iRate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRate.h; sourceTree = ""; }; 32 | B205F22E1462AC6600B69B0D /* iRate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iRate.m; sourceTree = ""; }; 33 | /* End PBXFileReference section */ 34 | 35 | /* Begin PBXFrameworksBuildPhase section */ 36 | 8D11072E0486CEB800E47090 /* Frameworks */ = { 37 | isa = PBXFrameworksBuildPhase; 38 | buildActionMask = 2147483647; 39 | files = ( 40 | 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, 41 | ); 42 | runOnlyForDeploymentPostprocessing = 0; 43 | }; 44 | /* End PBXFrameworksBuildPhase section */ 45 | 46 | /* Begin PBXGroup section */ 47 | 080E96DDFE201D6D7F000001 /* Classes */ = { 48 | isa = PBXGroup; 49 | children = ( 50 | 256AC3D80F4B6AC300CF3369 /* iRateMacAppDelegate.h */, 51 | 256AC3D90F4B6AC300CF3369 /* iRateMacAppDelegate.m */, 52 | ); 53 | name = Classes; 54 | sourceTree = ""; 55 | }; 56 | 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { 57 | isa = PBXGroup; 58 | children = ( 59 | 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, 60 | ); 61 | name = "Linked Frameworks"; 62 | sourceTree = ""; 63 | }; 64 | 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { 65 | isa = PBXGroup; 66 | children = ( 67 | 29B97324FDCFA39411CA2CEA /* AppKit.framework */, 68 | 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */, 69 | 29B97325FDCFA39411CA2CEA /* Foundation.framework */, 70 | ); 71 | name = "Other Frameworks"; 72 | sourceTree = ""; 73 | }; 74 | 19C28FACFE9D520D11CA2CBB /* Products */ = { 75 | isa = PBXGroup; 76 | children = ( 77 | 8D1107320486CEB800E47090 /* iRateAdvanced.app */, 78 | ); 79 | name = Products; 80 | sourceTree = ""; 81 | }; 82 | 29B97314FDCFA39411CA2CEA /* iVersionMac */ = { 83 | isa = PBXGroup; 84 | children = ( 85 | B205F22C1462AC6600B69B0D /* iRate */, 86 | 080E96DDFE201D6D7F000001 /* Classes */, 87 | 29B97315FDCFA39411CA2CEA /* Other Sources */, 88 | 29B97317FDCFA39411CA2CEA /* Resources */, 89 | 29B97323FDCFA39411CA2CEA /* Frameworks */, 90 | 19C28FACFE9D520D11CA2CBB /* Products */, 91 | ); 92 | name = iVersionMac; 93 | sourceTree = ""; 94 | }; 95 | 29B97315FDCFA39411CA2CEA /* Other Sources */ = { 96 | isa = PBXGroup; 97 | children = ( 98 | 256AC3F00F4B6AF500CF3369 /* iRateAdvanced_Prefix.pch */, 99 | 29B97316FDCFA39411CA2CEA /* main.m */, 100 | ); 101 | name = "Other Sources"; 102 | sourceTree = ""; 103 | }; 104 | 29B97317FDCFA39411CA2CEA /* Resources */ = { 105 | isa = PBXGroup; 106 | children = ( 107 | 8D1107310486CEB800E47090 /* iRateAdvanced-Info.plist */, 108 | 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, 109 | 1DDD58140DA1D0A300B32029 /* MainMenu.xib */, 110 | ); 111 | name = Resources; 112 | sourceTree = ""; 113 | }; 114 | 29B97323FDCFA39411CA2CEA /* Frameworks */ = { 115 | isa = PBXGroup; 116 | children = ( 117 | 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, 118 | 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, 119 | ); 120 | name = Frameworks; 121 | sourceTree = ""; 122 | }; 123 | B205F22C1462AC6600B69B0D /* iRate */ = { 124 | isa = PBXGroup; 125 | children = ( 126 | B205F22D1462AC6600B69B0D /* iRate.h */, 127 | B205F22E1462AC6600B69B0D /* iRate.m */, 128 | ); 129 | name = iRate; 130 | path = ../../iRate; 131 | sourceTree = ""; 132 | }; 133 | /* End PBXGroup section */ 134 | 135 | /* Begin PBXNativeTarget section */ 136 | 8D1107260486CEB800E47090 /* iRateAdvanced */ = { 137 | isa = PBXNativeTarget; 138 | buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "iRateAdvanced" */; 139 | buildPhases = ( 140 | 8D1107290486CEB800E47090 /* Resources */, 141 | 8D11072C0486CEB800E47090 /* Sources */, 142 | 8D11072E0486CEB800E47090 /* Frameworks */, 143 | ); 144 | buildRules = ( 145 | ); 146 | dependencies = ( 147 | ); 148 | name = iRateAdvanced; 149 | productInstallPath = "$(HOME)/Applications"; 150 | productName = iVersionMac; 151 | productReference = 8D1107320486CEB800E47090 /* iRateAdvanced.app */; 152 | productType = "com.apple.product-type.application"; 153 | }; 154 | /* End PBXNativeTarget section */ 155 | 156 | /* Begin PBXProject section */ 157 | 29B97313FDCFA39411CA2CEA /* Project object */ = { 158 | isa = PBXProject; 159 | attributes = { 160 | LastUpgradeCheck = 0500; 161 | }; 162 | buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "iRateAdvanced" */; 163 | compatibilityVersion = "Xcode 3.2"; 164 | developmentRegion = English; 165 | hasScannedForEncodings = 1; 166 | knownRegions = ( 167 | English, 168 | Japanese, 169 | French, 170 | German, 171 | ); 172 | mainGroup = 29B97314FDCFA39411CA2CEA /* iVersionMac */; 173 | projectDirPath = ""; 174 | projectRoot = ""; 175 | targets = ( 176 | 8D1107260486CEB800E47090 /* iRateAdvanced */, 177 | ); 178 | }; 179 | /* End PBXProject section */ 180 | 181 | /* Begin PBXResourcesBuildPhase section */ 182 | 8D1107290486CEB800E47090 /* Resources */ = { 183 | isa = PBXResourcesBuildPhase; 184 | buildActionMask = 2147483647; 185 | files = ( 186 | 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, 187 | 1DDD58160DA1D0A300B32029 /* MainMenu.xib in Resources */, 188 | ); 189 | runOnlyForDeploymentPostprocessing = 0; 190 | }; 191 | /* End PBXResourcesBuildPhase section */ 192 | 193 | /* Begin PBXSourcesBuildPhase section */ 194 | 8D11072C0486CEB800E47090 /* Sources */ = { 195 | isa = PBXSourcesBuildPhase; 196 | buildActionMask = 2147483647; 197 | files = ( 198 | 8D11072D0486CEB800E47090 /* main.m in Sources */, 199 | 256AC3DA0F4B6AC300CF3369 /* iRateMacAppDelegate.m in Sources */, 200 | B205F22F1462AC6600B69B0D /* iRate.m in Sources */, 201 | ); 202 | runOnlyForDeploymentPostprocessing = 0; 203 | }; 204 | /* End PBXSourcesBuildPhase section */ 205 | 206 | /* Begin PBXVariantGroup section */ 207 | 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { 208 | isa = PBXVariantGroup; 209 | children = ( 210 | 089C165DFE840E0CC02AAC07 /* English */, 211 | ); 212 | name = InfoPlist.strings; 213 | sourceTree = ""; 214 | }; 215 | 1DDD58140DA1D0A300B32029 /* MainMenu.xib */ = { 216 | isa = PBXVariantGroup; 217 | children = ( 218 | 1DDD58150DA1D0A300B32029 /* English */, 219 | ); 220 | name = MainMenu.xib; 221 | sourceTree = ""; 222 | }; 223 | /* End PBXVariantGroup section */ 224 | 225 | /* Begin XCBuildConfiguration section */ 226 | C01FCF4B08A954540054247B /* Debug */ = { 227 | isa = XCBuildConfiguration; 228 | buildSettings = { 229 | ALWAYS_SEARCH_USER_PATHS = NO; 230 | CLANG_ENABLE_OBJC_ARC = YES; 231 | COMBINE_HIDPI_IMAGES = YES; 232 | COPY_PHASE_STRIP = NO; 233 | GCC_DYNAMIC_NO_PIC = NO; 234 | GCC_MODEL_TUNING = G5; 235 | GCC_OPTIMIZATION_LEVEL = 0; 236 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 237 | GCC_PREFIX_HEADER = iRateAdvanced_Prefix.pch; 238 | INFOPLIST_FILE = "iRateAdvanced-Info.plist"; 239 | INSTALL_PATH = "$(HOME)/Applications"; 240 | PRODUCT_NAME = iRateAdvanced; 241 | }; 242 | name = Debug; 243 | }; 244 | C01FCF4C08A954540054247B /* Release */ = { 245 | isa = XCBuildConfiguration; 246 | buildSettings = { 247 | ALWAYS_SEARCH_USER_PATHS = NO; 248 | CLANG_ENABLE_OBJC_ARC = YES; 249 | COMBINE_HIDPI_IMAGES = YES; 250 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 251 | GCC_MODEL_TUNING = G5; 252 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 253 | GCC_PREFIX_HEADER = iRateAdvanced_Prefix.pch; 254 | INFOPLIST_FILE = "iRateAdvanced-Info.plist"; 255 | INSTALL_PATH = "$(HOME)/Applications"; 256 | PRODUCT_NAME = iRateAdvanced; 257 | }; 258 | name = Release; 259 | }; 260 | C01FCF4F08A954540054247B /* Debug */ = { 261 | isa = XCBuildConfiguration; 262 | buildSettings = { 263 | GCC_C_LANGUAGE_STANDARD = gnu99; 264 | GCC_OPTIMIZATION_LEVEL = 0; 265 | GCC_TREAT_WARNINGS_AS_ERRORS = YES; 266 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 267 | GCC_WARN_UNUSED_VARIABLE = YES; 268 | MACOSX_DEPLOYMENT_TARGET = 10.7; 269 | ONLY_ACTIVE_ARCH = YES; 270 | RUN_CLANG_STATIC_ANALYZER = YES; 271 | SDKROOT = macosx; 272 | }; 273 | name = Debug; 274 | }; 275 | C01FCF5008A954540054247B /* Release */ = { 276 | isa = XCBuildConfiguration; 277 | buildSettings = { 278 | GCC_C_LANGUAGE_STANDARD = gnu99; 279 | GCC_TREAT_WARNINGS_AS_ERRORS = YES; 280 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 281 | GCC_WARN_UNUSED_VARIABLE = YES; 282 | MACOSX_DEPLOYMENT_TARGET = 10.7; 283 | RUN_CLANG_STATIC_ANALYZER = YES; 284 | SDKROOT = macosx; 285 | }; 286 | name = Release; 287 | }; 288 | /* End XCBuildConfiguration section */ 289 | 290 | /* Begin XCConfigurationList section */ 291 | C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "iRateAdvanced" */ = { 292 | isa = XCConfigurationList; 293 | buildConfigurations = ( 294 | C01FCF4B08A954540054247B /* Debug */, 295 | C01FCF4C08A954540054247B /* Release */, 296 | ); 297 | defaultConfigurationIsVisible = 0; 298 | defaultConfigurationName = Release; 299 | }; 300 | C01FCF4E08A954540054247B /* Build configuration list for PBXProject "iRateAdvanced" */ = { 301 | isa = XCConfigurationList; 302 | buildConfigurations = ( 303 | C01FCF4F08A954540054247B /* Debug */, 304 | C01FCF5008A954540054247B /* Release */, 305 | ); 306 | defaultConfigurationIsVisible = 0; 307 | defaultConfigurationName = Release; 308 | }; 309 | /* End XCConfigurationList section */ 310 | }; 311 | rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; 312 | } 313 | -------------------------------------------------------------------------------- /Examples/Swift Demo/SwiftDemo.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 13BDD53219EB26910060C341 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13BDD53119EB26910060C341 /* AppDelegate.swift */; }; 11 | 13BDD53419EB26910060C341 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13BDD53319EB26910060C341 /* ViewController.swift */; }; 12 | 13BDD53719EB26910060C341 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 13BDD53519EB26910060C341 /* Main.storyboard */; }; 13 | 13BDD53919EB26910060C341 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13BDD53819EB26910060C341 /* Images.xcassets */; }; 14 | 13BDD53C19EB26910060C341 /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 13BDD53A19EB26910060C341 /* LaunchScreen.xib */; }; 15 | 13BDD55519EB269C0060C341 /* iRate.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 13BDD55219EB269C0060C341 /* iRate.bundle */; }; 16 | 13BDD55619EB269C0060C341 /* iRate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13BDD55419EB269C0060C341 /* iRate.m */; }; 17 | /* End PBXBuildFile section */ 18 | 19 | /* Begin PBXFileReference section */ 20 | 13BDD52C19EB26910060C341 /* SwiftDemo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SwiftDemo.app; sourceTree = BUILT_PRODUCTS_DIR; }; 21 | 13BDD53019EB26910060C341 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 22 | 13BDD53119EB26910060C341 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 23 | 13BDD53319EB26910060C341 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; 24 | 13BDD53619EB26910060C341 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; 25 | 13BDD53819EB26910060C341 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 26 | 13BDD53B19EB26910060C341 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; 27 | 13BDD54619EB26910060C341 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 28 | 13BDD54719EB26910060C341 /* SwiftDemoTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftDemoTests.swift; sourceTree = ""; }; 29 | 13BDD55219EB269C0060C341 /* iRate.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = iRate.bundle; sourceTree = ""; }; 30 | 13BDD55319EB269C0060C341 /* iRate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRate.h; sourceTree = ""; }; 31 | 13BDD55419EB269C0060C341 /* iRate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iRate.m; sourceTree = ""; }; 32 | 13BDD55719EB27320060C341 /* SwiftDemo-Bridging-Header.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SwiftDemo-Bridging-Header.h"; sourceTree = ""; }; 33 | /* End PBXFileReference section */ 34 | 35 | /* Begin PBXFrameworksBuildPhase section */ 36 | 13BDD52919EB26910060C341 /* Frameworks */ = { 37 | isa = PBXFrameworksBuildPhase; 38 | buildActionMask = 2147483647; 39 | files = ( 40 | ); 41 | runOnlyForDeploymentPostprocessing = 0; 42 | }; 43 | /* End PBXFrameworksBuildPhase section */ 44 | 45 | /* Begin PBXGroup section */ 46 | 13BDD52319EB26910060C341 = { 47 | isa = PBXGroup; 48 | children = ( 49 | 13BDD55119EB269C0060C341 /* iRate */, 50 | 13BDD52E19EB26910060C341 /* SwiftDemo */, 51 | 13BDD54419EB26910060C341 /* SwiftDemoTests */, 52 | 13BDD52D19EB26910060C341 /* Products */, 53 | ); 54 | sourceTree = ""; 55 | }; 56 | 13BDD52D19EB26910060C341 /* Products */ = { 57 | isa = PBXGroup; 58 | children = ( 59 | 13BDD52C19EB26910060C341 /* SwiftDemo.app */, 60 | ); 61 | name = Products; 62 | sourceTree = ""; 63 | }; 64 | 13BDD52E19EB26910060C341 /* SwiftDemo */ = { 65 | isa = PBXGroup; 66 | children = ( 67 | 13BDD53119EB26910060C341 /* AppDelegate.swift */, 68 | 13BDD53319EB26910060C341 /* ViewController.swift */, 69 | 13BDD53519EB26910060C341 /* Main.storyboard */, 70 | 13BDD53819EB26910060C341 /* Images.xcassets */, 71 | 13BDD53A19EB26910060C341 /* LaunchScreen.xib */, 72 | 13BDD52F19EB26910060C341 /* Supporting Files */, 73 | ); 74 | path = SwiftDemo; 75 | sourceTree = ""; 76 | }; 77 | 13BDD52F19EB26910060C341 /* Supporting Files */ = { 78 | isa = PBXGroup; 79 | children = ( 80 | 13BDD53019EB26910060C341 /* Info.plist */, 81 | 13BDD55719EB27320060C341 /* SwiftDemo-Bridging-Header.h */, 82 | ); 83 | name = "Supporting Files"; 84 | sourceTree = ""; 85 | }; 86 | 13BDD54419EB26910060C341 /* SwiftDemoTests */ = { 87 | isa = PBXGroup; 88 | children = ( 89 | 13BDD54719EB26910060C341 /* SwiftDemoTests.swift */, 90 | 13BDD54519EB26910060C341 /* Supporting Files */, 91 | ); 92 | path = SwiftDemoTests; 93 | sourceTree = ""; 94 | }; 95 | 13BDD54519EB26910060C341 /* Supporting Files */ = { 96 | isa = PBXGroup; 97 | children = ( 98 | 13BDD54619EB26910060C341 /* Info.plist */, 99 | ); 100 | name = "Supporting Files"; 101 | sourceTree = ""; 102 | }; 103 | 13BDD55119EB269C0060C341 /* iRate */ = { 104 | isa = PBXGroup; 105 | children = ( 106 | 13BDD55219EB269C0060C341 /* iRate.bundle */, 107 | 13BDD55319EB269C0060C341 /* iRate.h */, 108 | 13BDD55419EB269C0060C341 /* iRate.m */, 109 | ); 110 | name = iRate; 111 | path = ../../iRate; 112 | sourceTree = ""; 113 | }; 114 | /* End PBXGroup section */ 115 | 116 | /* Begin PBXNativeTarget section */ 117 | 13BDD52B19EB26910060C341 /* SwiftDemo */ = { 118 | isa = PBXNativeTarget; 119 | buildConfigurationList = 13BDD54B19EB26910060C341 /* Build configuration list for PBXNativeTarget "SwiftDemo" */; 120 | buildPhases = ( 121 | 13BDD52819EB26910060C341 /* Sources */, 122 | 13BDD52919EB26910060C341 /* Frameworks */, 123 | 13BDD52A19EB26910060C341 /* Resources */, 124 | ); 125 | buildRules = ( 126 | ); 127 | dependencies = ( 128 | ); 129 | name = SwiftDemo; 130 | productName = SwiftDemo; 131 | productReference = 13BDD52C19EB26910060C341 /* SwiftDemo.app */; 132 | productType = "com.apple.product-type.application"; 133 | }; 134 | /* End PBXNativeTarget section */ 135 | 136 | /* Begin PBXProject section */ 137 | 13BDD52419EB26910060C341 /* Project object */ = { 138 | isa = PBXProject; 139 | attributes = { 140 | LastSwiftUpdateCheck = 0720; 141 | LastUpgradeCheck = 0600; 142 | ORGANIZATIONNAME = "Charcoal Design"; 143 | TargetAttributes = { 144 | 13BDD52B19EB26910060C341 = { 145 | CreatedOnToolsVersion = 6.0.1; 146 | }; 147 | }; 148 | }; 149 | buildConfigurationList = 13BDD52719EB26910060C341 /* Build configuration list for PBXProject "SwiftDemo" */; 150 | compatibilityVersion = "Xcode 3.2"; 151 | developmentRegion = English; 152 | hasScannedForEncodings = 0; 153 | knownRegions = ( 154 | en, 155 | Base, 156 | ); 157 | mainGroup = 13BDD52319EB26910060C341; 158 | productRefGroup = 13BDD52D19EB26910060C341 /* Products */; 159 | projectDirPath = ""; 160 | projectRoot = ""; 161 | targets = ( 162 | 13BDD52B19EB26910060C341 /* SwiftDemo */, 163 | ); 164 | }; 165 | /* End PBXProject section */ 166 | 167 | /* Begin PBXResourcesBuildPhase section */ 168 | 13BDD52A19EB26910060C341 /* Resources */ = { 169 | isa = PBXResourcesBuildPhase; 170 | buildActionMask = 2147483647; 171 | files = ( 172 | 13BDD53719EB26910060C341 /* Main.storyboard in Resources */, 173 | 13BDD55519EB269C0060C341 /* iRate.bundle in Resources */, 174 | 13BDD53C19EB26910060C341 /* LaunchScreen.xib in Resources */, 175 | 13BDD53919EB26910060C341 /* Images.xcassets in Resources */, 176 | ); 177 | runOnlyForDeploymentPostprocessing = 0; 178 | }; 179 | /* End PBXResourcesBuildPhase section */ 180 | 181 | /* Begin PBXSourcesBuildPhase section */ 182 | 13BDD52819EB26910060C341 /* Sources */ = { 183 | isa = PBXSourcesBuildPhase; 184 | buildActionMask = 2147483647; 185 | files = ( 186 | 13BDD55619EB269C0060C341 /* iRate.m in Sources */, 187 | 13BDD53419EB26910060C341 /* ViewController.swift in Sources */, 188 | 13BDD53219EB26910060C341 /* AppDelegate.swift in Sources */, 189 | ); 190 | runOnlyForDeploymentPostprocessing = 0; 191 | }; 192 | /* End PBXSourcesBuildPhase section */ 193 | 194 | /* Begin PBXVariantGroup section */ 195 | 13BDD53519EB26910060C341 /* Main.storyboard */ = { 196 | isa = PBXVariantGroup; 197 | children = ( 198 | 13BDD53619EB26910060C341 /* Base */, 199 | ); 200 | name = Main.storyboard; 201 | sourceTree = ""; 202 | }; 203 | 13BDD53A19EB26910060C341 /* LaunchScreen.xib */ = { 204 | isa = PBXVariantGroup; 205 | children = ( 206 | 13BDD53B19EB26910060C341 /* Base */, 207 | ); 208 | name = LaunchScreen.xib; 209 | sourceTree = ""; 210 | }; 211 | /* End PBXVariantGroup section */ 212 | 213 | /* Begin XCBuildConfiguration section */ 214 | 13BDD54919EB26910060C341 /* Debug */ = { 215 | isa = XCBuildConfiguration; 216 | buildSettings = { 217 | ALWAYS_SEARCH_USER_PATHS = NO; 218 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 219 | CLANG_CXX_LIBRARY = "libc++"; 220 | CLANG_ENABLE_MODULES = YES; 221 | CLANG_ENABLE_OBJC_ARC = YES; 222 | CLANG_WARN_BOOL_CONVERSION = YES; 223 | CLANG_WARN_CONSTANT_CONVERSION = YES; 224 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 225 | CLANG_WARN_EMPTY_BODY = YES; 226 | CLANG_WARN_ENUM_CONVERSION = YES; 227 | CLANG_WARN_INT_CONVERSION = YES; 228 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 229 | CLANG_WARN_UNREACHABLE_CODE = YES; 230 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 231 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 232 | COPY_PHASE_STRIP = NO; 233 | ENABLE_STRICT_OBJC_MSGSEND = YES; 234 | GCC_C_LANGUAGE_STANDARD = gnu99; 235 | GCC_DYNAMIC_NO_PIC = NO; 236 | GCC_OPTIMIZATION_LEVEL = 0; 237 | GCC_PREPROCESSOR_DEFINITIONS = ( 238 | "DEBUG=1", 239 | "$(inherited)", 240 | ); 241 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 242 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 243 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 244 | GCC_WARN_UNDECLARED_SELECTOR = YES; 245 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 246 | GCC_WARN_UNUSED_FUNCTION = YES; 247 | GCC_WARN_UNUSED_VARIABLE = YES; 248 | IPHONEOS_DEPLOYMENT_TARGET = 8.0; 249 | MTL_ENABLE_DEBUG_INFO = YES; 250 | ONLY_ACTIVE_ARCH = YES; 251 | SDKROOT = iphoneos; 252 | SWIFT_OPTIMIZATION_LEVEL = "-Onone"; 253 | }; 254 | name = Debug; 255 | }; 256 | 13BDD54A19EB26910060C341 /* Release */ = { 257 | isa = XCBuildConfiguration; 258 | buildSettings = { 259 | ALWAYS_SEARCH_USER_PATHS = NO; 260 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 261 | CLANG_CXX_LIBRARY = "libc++"; 262 | CLANG_ENABLE_MODULES = YES; 263 | CLANG_ENABLE_OBJC_ARC = YES; 264 | CLANG_WARN_BOOL_CONVERSION = YES; 265 | CLANG_WARN_CONSTANT_CONVERSION = YES; 266 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 267 | CLANG_WARN_EMPTY_BODY = YES; 268 | CLANG_WARN_ENUM_CONVERSION = YES; 269 | CLANG_WARN_INT_CONVERSION = YES; 270 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 271 | CLANG_WARN_UNREACHABLE_CODE = YES; 272 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 273 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 274 | COPY_PHASE_STRIP = YES; 275 | ENABLE_NS_ASSERTIONS = NO; 276 | ENABLE_STRICT_OBJC_MSGSEND = YES; 277 | GCC_C_LANGUAGE_STANDARD = gnu99; 278 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 279 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 280 | GCC_WARN_UNDECLARED_SELECTOR = YES; 281 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 282 | GCC_WARN_UNUSED_FUNCTION = YES; 283 | GCC_WARN_UNUSED_VARIABLE = YES; 284 | IPHONEOS_DEPLOYMENT_TARGET = 8.0; 285 | MTL_ENABLE_DEBUG_INFO = NO; 286 | SDKROOT = iphoneos; 287 | VALIDATE_PRODUCT = YES; 288 | }; 289 | name = Release; 290 | }; 291 | 13BDD54C19EB26910060C341 /* Debug */ = { 292 | isa = XCBuildConfiguration; 293 | buildSettings = { 294 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 295 | INFOPLIST_FILE = SwiftDemo/Info.plist; 296 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 297 | PRODUCT_NAME = "$(TARGET_NAME)"; 298 | SWIFT_OBJC_BRIDGING_HEADER = "SwiftDemo/SwiftDemo-Bridging-Header.h"; 299 | }; 300 | name = Debug; 301 | }; 302 | 13BDD54D19EB26910060C341 /* Release */ = { 303 | isa = XCBuildConfiguration; 304 | buildSettings = { 305 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 306 | INFOPLIST_FILE = SwiftDemo/Info.plist; 307 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 308 | PRODUCT_NAME = "$(TARGET_NAME)"; 309 | SWIFT_OBJC_BRIDGING_HEADER = "SwiftDemo/SwiftDemo-Bridging-Header.h"; 310 | }; 311 | name = Release; 312 | }; 313 | /* End XCBuildConfiguration section */ 314 | 315 | /* Begin XCConfigurationList section */ 316 | 13BDD52719EB26910060C341 /* Build configuration list for PBXProject "SwiftDemo" */ = { 317 | isa = XCConfigurationList; 318 | buildConfigurations = ( 319 | 13BDD54919EB26910060C341 /* Debug */, 320 | 13BDD54A19EB26910060C341 /* Release */, 321 | ); 322 | defaultConfigurationIsVisible = 0; 323 | defaultConfigurationName = Release; 324 | }; 325 | 13BDD54B19EB26910060C341 /* Build configuration list for PBXNativeTarget "SwiftDemo" */ = { 326 | isa = XCConfigurationList; 327 | buildConfigurations = ( 328 | 13BDD54C19EB26910060C341 /* Debug */, 329 | 13BDD54D19EB26910060C341 /* Release */, 330 | ); 331 | defaultConfigurationIsVisible = 0; 332 | defaultConfigurationName = Release; 333 | }; 334 | /* End XCConfigurationList section */ 335 | }; 336 | rootObject = 13BDD52419EB26910060C341 /* Project object */; 337 | } 338 | -------------------------------------------------------------------------------- /Examples/Events Demo/iRateViewController.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 1536 5 | 12C60 6 | 2844 7 | 1187.34 8 | 625.00 9 | 10 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 11 | 1930 12 | 13 | 14 | YES 15 | IBProxyObject 16 | IBUIButton 17 | IBUILabel 18 | IBUIView 19 | 20 | 21 | YES 22 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 23 | 24 | 25 | PluginDependencyRecalculationVersion 26 | 27 | 28 | 29 | YES 30 | 31 | IBFilesOwner 32 | IBCocoaTouchFramework 33 | 34 | 35 | IBFirstResponder 36 | IBCocoaTouchFramework 37 | 38 | 39 | 40 | 274 41 | 42 | YES 43 | 44 | 45 | 301 46 | {{108, 161}, {105, 37}} 47 | 48 | 49 | 50 | _NS:9 51 | NO 52 | IBCocoaTouchFramework 53 | 0 54 | 0 55 | 1 56 | Log Event 57 | 58 | 3 59 | MQA 60 | 61 | 62 | 1 63 | MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA 64 | 65 | 66 | 3 67 | MC41AA 68 | 69 | 70 | 2 71 | 15 72 | 73 | 74 | Helvetica-Bold 75 | 15 76 | 16 77 | 78 | 79 | 80 | 81 | 301 82 | {{20, 27}, {280, 84}} 83 | 84 | 85 | 86 | _NS:9 87 | NO 88 | YES 89 | 7 90 | NO 91 | IBCocoaTouchFramework 92 | Press the button below to log an event with iRate. After five events, the prompt will be shown. 93 | 94 | 1 95 | MCAwIDAAA 96 | darkTextColor 97 | 98 | 99 | 0 100 | 10 101 | 0 102 | 1 103 | 104 | 1 105 | 17 106 | 107 | 108 | Helvetica 109 | 17 110 | 16 111 | 112 | 280 113 | 114 | 115 | 116 | 301 117 | {{26, 241}, {268, 168}} 118 | 119 | 120 | _NS:9 121 | NO 122 | YES 123 | 7 124 | NO 125 | IBCocoaTouchFramework 126 | In this example, we've disabled the reminder period and used the iRate delegate to reset the event count after each prompt, so that after another five presses the prompt will be re-shown, but note that this is not the default behaviour. 127 | 128 | 129 | 0 130 | 10 131 | 0 132 | 1 133 | 134 | 135 | 268 136 | 137 | 138 | {{0, 20}, {320, 460}} 139 | 140 | 141 | 142 | 143 | 3 144 | MC43NQA 145 | 146 | 2 147 | 148 | 149 | NO 150 | 151 | IBCocoaTouchFramework 152 | 153 | 154 | 155 | 156 | YES 157 | 158 | 159 | view 160 | 161 | 162 | 163 | 7 164 | 165 | 166 | 167 | logEvent 168 | 169 | 170 | 7 171 | 172 | 10 173 | 174 | 175 | 176 | 177 | YES 178 | 179 | 0 180 | 181 | YES 182 | 183 | 184 | 185 | 186 | 187 | -1 188 | 189 | 190 | File's Owner 191 | 192 | 193 | -2 194 | 195 | 196 | 197 | 198 | 6 199 | 200 | 201 | YES 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 8 210 | 211 | 212 | 213 | 214 | 11 215 | 216 | 217 | 218 | 219 | 12 220 | 221 | 222 | 223 | 224 | 225 | 226 | YES 227 | 228 | YES 229 | -1.CustomClassName 230 | -1.IBPluginDependency 231 | -2.CustomClassName 232 | -2.IBPluginDependency 233 | 11.IBPluginDependency 234 | 12.IBPluginDependency 235 | 6.IBPluginDependency 236 | 8.IBPluginDependency 237 | 238 | 239 | YES 240 | iRateViewController 241 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 242 | UIResponder 243 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 244 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 245 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 246 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 247 | com.apple.InterfaceBuilder.IBCocoaTouchPlugin 248 | 249 | 250 | 251 | YES 252 | 253 | 254 | 255 | 256 | 257 | YES 258 | 259 | 260 | 261 | 262 | 12 263 | 264 | 265 | 266 | YES 267 | 268 | iRateViewController 269 | UIViewController 270 | 271 | logEvent 272 | id 273 | 274 | 275 | logEvent 276 | 277 | logEvent 278 | id 279 | 280 | 281 | 282 | IBProjectSource 283 | ./Classes/iRateViewController.h 284 | 285 | 286 | 287 | 288 | 0 289 | IBCocoaTouchFramework 290 | 291 | com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS 292 | 293 | 294 | 295 | com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3 296 | 297 | 298 | YES 299 | 3 300 | 1930 301 | 302 | 303 | -------------------------------------------------------------------------------- /Examples/Events Demo/iRate.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 0162D124160A192E0043113D /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 0162D123160A192E0043113D /* Default-568h@2x.png */; }; 11 | 018D55E216605FBC005DE12D /* StoreKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 018D55E116605FBC005DE12D /* StoreKit.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 12 | 01E880F815165AB900BFF881 /* iRate.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 01E880F715165AB900BFF881 /* iRate.bundle */; }; 13 | 1D3623260D0F684500981E51 /* iRateAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* iRateAppDelegate.m */; }; 14 | 1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; }; 15 | 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; }; 16 | 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; }; 17 | 288765A50DF7441C002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765A40DF7441C002DB57D /* CoreGraphics.framework */; }; 18 | 2899E5220DE3E06400AC0155 /* iRateViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 2899E5210DE3E06400AC0155 /* iRateViewController.xib */; }; 19 | 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 28AD733E0D9D9553002E5188 /* MainWindow.xib */; }; 20 | 28D7ACF80DDB3853001CB0EB /* iRateViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 28D7ACF70DDB3853001CB0EB /* iRateViewController.m */; }; 21 | B205F2191462A82C00B69B0D /* iRate.m in Sources */ = {isa = PBXBuildFile; fileRef = B205F2181462A82C00B69B0D /* iRate.m */; }; 22 | /* End PBXBuildFile section */ 23 | 24 | /* Begin PBXFileReference section */ 25 | 0162D123160A192E0043113D /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = ""; }; 26 | 018D55E116605FBC005DE12D /* StoreKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = StoreKit.framework; path = System/Library/Frameworks/StoreKit.framework; sourceTree = SDKROOT; }; 27 | 01E880F715165AB900BFF881 /* iRate.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = iRate.bundle; sourceTree = ""; }; 28 | 1D30AB110D05D00D00671497 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 29 | 1D3623240D0F684500981E51 /* iRateAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRateAppDelegate.h; sourceTree = ""; }; 30 | 1D3623250D0F684500981E51 /* iRateAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iRateAppDelegate.m; sourceTree = ""; }; 31 | 1D6058910D05DD3D006BFB54 /* iRate.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = iRate.app; sourceTree = BUILT_PRODUCTS_DIR; }; 32 | 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 33 | 288765A40DF7441C002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 34 | 2899E5210DE3E06400AC0155 /* iRateViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = iRateViewController.xib; sourceTree = ""; }; 35 | 28AD733E0D9D9553002E5188 /* MainWindow.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MainWindow.xib; sourceTree = ""; }; 36 | 28D7ACF60DDB3853001CB0EB /* iRateViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRateViewController.h; sourceTree = ""; }; 37 | 28D7ACF70DDB3853001CB0EB /* iRateViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iRateViewController.m; sourceTree = ""; }; 38 | 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 39 | 32CA4F630368D1EE00C91783 /* iRate_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRate_Prefix.pch; sourceTree = ""; }; 40 | 8D1107310486CEB800E47090 /* iRate-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "iRate-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = ""; }; 41 | B205F2171462A82C00B69B0D /* iRate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRate.h; sourceTree = ""; }; 42 | B205F2181462A82C00B69B0D /* iRate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iRate.m; sourceTree = ""; }; 43 | /* End PBXFileReference section */ 44 | 45 | /* Begin PBXFrameworksBuildPhase section */ 46 | 1D60588F0D05DD3D006BFB54 /* Frameworks */ = { 47 | isa = PBXFrameworksBuildPhase; 48 | buildActionMask = 2147483647; 49 | files = ( 50 | 018D55E216605FBC005DE12D /* StoreKit.framework in Frameworks */, 51 | 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */, 52 | 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */, 53 | 288765A50DF7441C002DB57D /* CoreGraphics.framework in Frameworks */, 54 | ); 55 | runOnlyForDeploymentPostprocessing = 0; 56 | }; 57 | /* End PBXFrameworksBuildPhase section */ 58 | 59 | /* Begin PBXGroup section */ 60 | 080E96DDFE201D6D7F000001 /* Classes */ = { 61 | isa = PBXGroup; 62 | children = ( 63 | 1D3623240D0F684500981E51 /* iRateAppDelegate.h */, 64 | 1D3623250D0F684500981E51 /* iRateAppDelegate.m */, 65 | 28D7ACF60DDB3853001CB0EB /* iRateViewController.h */, 66 | 28D7ACF70DDB3853001CB0EB /* iRateViewController.m */, 67 | ); 68 | path = Classes; 69 | sourceTree = ""; 70 | }; 71 | 19C28FACFE9D520D11CA2CBB /* Products */ = { 72 | isa = PBXGroup; 73 | children = ( 74 | 1D6058910D05DD3D006BFB54 /* iRate.app */, 75 | ); 76 | name = Products; 77 | sourceTree = ""; 78 | }; 79 | 29B97314FDCFA39411CA2CEA /* CustomTemplate */ = { 80 | isa = PBXGroup; 81 | children = ( 82 | B205F2161462A82C00B69B0D /* iRate */, 83 | 080E96DDFE201D6D7F000001 /* Classes */, 84 | 29B97315FDCFA39411CA2CEA /* Other Sources */, 85 | 29B97317FDCFA39411CA2CEA /* Resources */, 86 | 29B97323FDCFA39411CA2CEA /* Frameworks */, 87 | 19C28FACFE9D520D11CA2CBB /* Products */, 88 | ); 89 | name = CustomTemplate; 90 | sourceTree = ""; 91 | }; 92 | 29B97315FDCFA39411CA2CEA /* Other Sources */ = { 93 | isa = PBXGroup; 94 | children = ( 95 | 8D1107310486CEB800E47090 /* iRate-Info.plist */, 96 | 32CA4F630368D1EE00C91783 /* iRate_Prefix.pch */, 97 | 29B97316FDCFA39411CA2CEA /* main.m */, 98 | ); 99 | name = "Other Sources"; 100 | sourceTree = ""; 101 | }; 102 | 29B97317FDCFA39411CA2CEA /* Resources */ = { 103 | isa = PBXGroup; 104 | children = ( 105 | 0162D123160A192E0043113D /* Default-568h@2x.png */, 106 | 2899E5210DE3E06400AC0155 /* iRateViewController.xib */, 107 | 28AD733E0D9D9553002E5188 /* MainWindow.xib */, 108 | ); 109 | name = Resources; 110 | sourceTree = ""; 111 | }; 112 | 29B97323FDCFA39411CA2CEA /* Frameworks */ = { 113 | isa = PBXGroup; 114 | children = ( 115 | 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */, 116 | 1D30AB110D05D00D00671497 /* Foundation.framework */, 117 | 288765A40DF7441C002DB57D /* CoreGraphics.framework */, 118 | 018D55E116605FBC005DE12D /* StoreKit.framework */, 119 | ); 120 | name = Frameworks; 121 | sourceTree = ""; 122 | }; 123 | B205F2161462A82C00B69B0D /* iRate */ = { 124 | isa = PBXGroup; 125 | children = ( 126 | 01E880F715165AB900BFF881 /* iRate.bundle */, 127 | B205F2171462A82C00B69B0D /* iRate.h */, 128 | B205F2181462A82C00B69B0D /* iRate.m */, 129 | ); 130 | name = iRate; 131 | path = ../../iRate; 132 | sourceTree = ""; 133 | }; 134 | /* End PBXGroup section */ 135 | 136 | /* Begin PBXNativeTarget section */ 137 | 1D6058900D05DD3D006BFB54 /* iRate */ = { 138 | isa = PBXNativeTarget; 139 | buildConfigurationList = 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "iRate" */; 140 | buildPhases = ( 141 | 1D60588D0D05DD3D006BFB54 /* Resources */, 142 | 1D60588E0D05DD3D006BFB54 /* Sources */, 143 | 1D60588F0D05DD3D006BFB54 /* Frameworks */, 144 | ); 145 | buildRules = ( 146 | ); 147 | dependencies = ( 148 | ); 149 | name = iRate; 150 | productName = iVersion; 151 | productReference = 1D6058910D05DD3D006BFB54 /* iRate.app */; 152 | productType = "com.apple.product-type.application"; 153 | }; 154 | /* End PBXNativeTarget section */ 155 | 156 | /* Begin PBXProject section */ 157 | 29B97313FDCFA39411CA2CEA /* Project object */ = { 158 | isa = PBXProject; 159 | attributes = { 160 | LastUpgradeCheck = 0450; 161 | }; 162 | buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "iRate" */; 163 | compatibilityVersion = "Xcode 3.2"; 164 | developmentRegion = English; 165 | hasScannedForEncodings = 1; 166 | knownRegions = ( 167 | English, 168 | Japanese, 169 | French, 170 | German, 171 | ); 172 | mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */; 173 | projectDirPath = ""; 174 | projectRoot = ""; 175 | targets = ( 176 | 1D6058900D05DD3D006BFB54 /* iRate */, 177 | ); 178 | }; 179 | /* End PBXProject section */ 180 | 181 | /* Begin PBXResourcesBuildPhase section */ 182 | 1D60588D0D05DD3D006BFB54 /* Resources */ = { 183 | isa = PBXResourcesBuildPhase; 184 | buildActionMask = 2147483647; 185 | files = ( 186 | 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */, 187 | 2899E5220DE3E06400AC0155 /* iRateViewController.xib in Resources */, 188 | 01E880F815165AB900BFF881 /* iRate.bundle in Resources */, 189 | 0162D124160A192E0043113D /* Default-568h@2x.png in Resources */, 190 | ); 191 | runOnlyForDeploymentPostprocessing = 0; 192 | }; 193 | /* End PBXResourcesBuildPhase section */ 194 | 195 | /* Begin PBXSourcesBuildPhase section */ 196 | 1D60588E0D05DD3D006BFB54 /* Sources */ = { 197 | isa = PBXSourcesBuildPhase; 198 | buildActionMask = 2147483647; 199 | files = ( 200 | 1D60589B0D05DD56006BFB54 /* main.m in Sources */, 201 | 1D3623260D0F684500981E51 /* iRateAppDelegate.m in Sources */, 202 | 28D7ACF80DDB3853001CB0EB /* iRateViewController.m in Sources */, 203 | B205F2191462A82C00B69B0D /* iRate.m in Sources */, 204 | ); 205 | runOnlyForDeploymentPostprocessing = 0; 206 | }; 207 | /* End PBXSourcesBuildPhase section */ 208 | 209 | /* Begin XCBuildConfiguration section */ 210 | 1D6058940D05DD3E006BFB54 /* Debug */ = { 211 | isa = XCBuildConfiguration; 212 | buildSettings = { 213 | ALWAYS_SEARCH_USER_PATHS = NO; 214 | CLANG_ENABLE_OBJC_ARC = YES; 215 | CODE_SIGN_ENTITLEMENTS = ""; 216 | COPY_PHASE_STRIP = NO; 217 | GCC_DYNAMIC_NO_PIC = NO; 218 | GCC_OPTIMIZATION_LEVEL = 0; 219 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 220 | GCC_PREFIX_HEADER = iRate_Prefix.pch; 221 | GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1"; 222 | GCC_TREAT_WARNINGS_AS_ERRORS = YES; 223 | INFOPLIST_FILE = "iRate-Info.plist"; 224 | IPHONEOS_DEPLOYMENT_TARGET = 6.0; 225 | PRODUCT_NAME = iRate; 226 | RUN_CLANG_STATIC_ANALYZER = YES; 227 | TARGETED_DEVICE_FAMILY = "1,2"; 228 | }; 229 | name = Debug; 230 | }; 231 | 1D6058950D05DD3E006BFB54 /* Release */ = { 232 | isa = XCBuildConfiguration; 233 | buildSettings = { 234 | ALWAYS_SEARCH_USER_PATHS = NO; 235 | CLANG_ENABLE_OBJC_ARC = YES; 236 | COPY_PHASE_STRIP = YES; 237 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 238 | GCC_PREFIX_HEADER = iRate_Prefix.pch; 239 | GCC_TREAT_WARNINGS_AS_ERRORS = YES; 240 | INFOPLIST_FILE = "iRate-Info.plist"; 241 | IPHONEOS_DEPLOYMENT_TARGET = 6.0; 242 | PRODUCT_NAME = iRate; 243 | RUN_CLANG_STATIC_ANALYZER = YES; 244 | TARGETED_DEVICE_FAMILY = "1,2"; 245 | VALIDATE_PRODUCT = YES; 246 | }; 247 | name = Release; 248 | }; 249 | C01FCF4F08A954540054247B /* Debug */ = { 250 | isa = XCBuildConfiguration; 251 | buildSettings = { 252 | ARCHS = "$(ARCHS_STANDARD_32_BIT)"; 253 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 254 | GCC_C_LANGUAGE_STANDARD = c99; 255 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 256 | GCC_WARN_UNUSED_VARIABLE = YES; 257 | IPHONEOS_DEPLOYMENT_TARGET = 3.0; 258 | SDKROOT = iphoneos; 259 | }; 260 | name = Debug; 261 | }; 262 | C01FCF5008A954540054247B /* Release */ = { 263 | isa = XCBuildConfiguration; 264 | buildSettings = { 265 | ARCHS = "$(ARCHS_STANDARD_32_BIT)"; 266 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 267 | GCC_C_LANGUAGE_STANDARD = c99; 268 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 269 | GCC_WARN_UNUSED_VARIABLE = YES; 270 | IPHONEOS_DEPLOYMENT_TARGET = 3.0; 271 | OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; 272 | SDKROOT = iphoneos; 273 | }; 274 | name = Release; 275 | }; 276 | /* End XCBuildConfiguration section */ 277 | 278 | /* Begin XCConfigurationList section */ 279 | 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "iRate" */ = { 280 | isa = XCConfigurationList; 281 | buildConfigurations = ( 282 | 1D6058940D05DD3E006BFB54 /* Debug */, 283 | 1D6058950D05DD3E006BFB54 /* Release */, 284 | ); 285 | defaultConfigurationIsVisible = 0; 286 | defaultConfigurationName = Release; 287 | }; 288 | C01FCF4E08A954540054247B /* Build configuration list for PBXProject "iRate" */ = { 289 | isa = XCConfigurationList; 290 | buildConfigurations = ( 291 | C01FCF4F08A954540054247B /* Debug */, 292 | C01FCF5008A954540054247B /* Release */, 293 | ); 294 | defaultConfigurationIsVisible = 0; 295 | defaultConfigurationName = Release; 296 | }; 297 | /* End XCConfigurationList section */ 298 | }; 299 | rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; 300 | } 301 | -------------------------------------------------------------------------------- /Examples/Zero Config Demo/ZeroConfig.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 016071201660EF7000932AE1 /* StoreKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0160711F1660EF7000932AE1 /* StoreKit.framework */; }; 11 | 0195D47B160A21110012C4A6 /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 0195D47A160A21110012C4A6 /* Default-568h@2x.png */; }; 12 | 01E880F815165AB900BFF881 /* iRate.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 01E880F715165AB900BFF881 /* iRate.bundle */; }; 13 | 1D3623260D0F684500981E51 /* iRateAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* iRateAppDelegate.m */; }; 14 | 1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; }; 15 | 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; }; 16 | 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; }; 17 | 288765A50DF7441C002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765A40DF7441C002DB57D /* CoreGraphics.framework */; }; 18 | 2899E5220DE3E06400AC0155 /* iRateViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 2899E5210DE3E06400AC0155 /* iRateViewController.xib */; }; 19 | 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 28AD733E0D9D9553002E5188 /* MainWindow.xib */; }; 20 | 28D7ACF80DDB3853001CB0EB /* iRateViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 28D7ACF70DDB3853001CB0EB /* iRateViewController.m */; }; 21 | B205F2191462A82C00B69B0D /* iRate.m in Sources */ = {isa = PBXBuildFile; fileRef = B205F2181462A82C00B69B0D /* iRate.m */; }; 22 | /* End PBXBuildFile section */ 23 | 24 | /* Begin PBXFileReference section */ 25 | 0160711F1660EF7000932AE1 /* StoreKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = StoreKit.framework; path = System/Library/Frameworks/StoreKit.framework; sourceTree = SDKROOT; }; 26 | 0195D47A160A21110012C4A6 /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = ""; }; 27 | 01E880F715165AB900BFF881 /* iRate.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = iRate.bundle; sourceTree = ""; }; 28 | 1D30AB110D05D00D00671497 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 29 | 1D3623240D0F684500981E51 /* iRateAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRateAppDelegate.h; sourceTree = ""; }; 30 | 1D3623250D0F684500981E51 /* iRateAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iRateAppDelegate.m; sourceTree = ""; }; 31 | 1D6058910D05DD3D006BFB54 /* ZeroConfig.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ZeroConfig.app; sourceTree = BUILT_PRODUCTS_DIR; }; 32 | 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 33 | 288765A40DF7441C002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 34 | 2899E5210DE3E06400AC0155 /* iRateViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = iRateViewController.xib; sourceTree = ""; }; 35 | 28AD733E0D9D9553002E5188 /* MainWindow.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MainWindow.xib; sourceTree = ""; }; 36 | 28D7ACF60DDB3853001CB0EB /* iRateViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRateViewController.h; sourceTree = ""; }; 37 | 28D7ACF70DDB3853001CB0EB /* iRateViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iRateViewController.m; sourceTree = ""; }; 38 | 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 39 | 32CA4F630368D1EE00C91783 /* ZeroConfig_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZeroConfig_Prefix.pch; sourceTree = ""; }; 40 | 8D1107310486CEB800E47090 /* ZeroConfig-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "ZeroConfig-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = ""; }; 41 | B205F2171462A82C00B69B0D /* iRate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRate.h; sourceTree = ""; }; 42 | B205F2181462A82C00B69B0D /* iRate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iRate.m; sourceTree = ""; }; 43 | /* End PBXFileReference section */ 44 | 45 | /* Begin PBXFrameworksBuildPhase section */ 46 | 1D60588F0D05DD3D006BFB54 /* Frameworks */ = { 47 | isa = PBXFrameworksBuildPhase; 48 | buildActionMask = 2147483647; 49 | files = ( 50 | 016071201660EF7000932AE1 /* StoreKit.framework in Frameworks */, 51 | 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */, 52 | 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */, 53 | 288765A50DF7441C002DB57D /* CoreGraphics.framework in Frameworks */, 54 | ); 55 | runOnlyForDeploymentPostprocessing = 0; 56 | }; 57 | /* End PBXFrameworksBuildPhase section */ 58 | 59 | /* Begin PBXGroup section */ 60 | 080E96DDFE201D6D7F000001 /* Classes */ = { 61 | isa = PBXGroup; 62 | children = ( 63 | 1D3623240D0F684500981E51 /* iRateAppDelegate.h */, 64 | 1D3623250D0F684500981E51 /* iRateAppDelegate.m */, 65 | 28D7ACF60DDB3853001CB0EB /* iRateViewController.h */, 66 | 28D7ACF70DDB3853001CB0EB /* iRateViewController.m */, 67 | ); 68 | path = Classes; 69 | sourceTree = ""; 70 | }; 71 | 19C28FACFE9D520D11CA2CBB /* Products */ = { 72 | isa = PBXGroup; 73 | children = ( 74 | 1D6058910D05DD3D006BFB54 /* ZeroConfig.app */, 75 | ); 76 | name = Products; 77 | sourceTree = ""; 78 | }; 79 | 29B97314FDCFA39411CA2CEA /* CustomTemplate */ = { 80 | isa = PBXGroup; 81 | children = ( 82 | B205F2161462A82C00B69B0D /* iRate */, 83 | 080E96DDFE201D6D7F000001 /* Classes */, 84 | 29B97315FDCFA39411CA2CEA /* Other Sources */, 85 | 29B97317FDCFA39411CA2CEA /* Resources */, 86 | 29B97323FDCFA39411CA2CEA /* Frameworks */, 87 | 19C28FACFE9D520D11CA2CBB /* Products */, 88 | ); 89 | name = CustomTemplate; 90 | sourceTree = ""; 91 | }; 92 | 29B97315FDCFA39411CA2CEA /* Other Sources */ = { 93 | isa = PBXGroup; 94 | children = ( 95 | 8D1107310486CEB800E47090 /* ZeroConfig-Info.plist */, 96 | 32CA4F630368D1EE00C91783 /* ZeroConfig_Prefix.pch */, 97 | 29B97316FDCFA39411CA2CEA /* main.m */, 98 | ); 99 | name = "Other Sources"; 100 | sourceTree = ""; 101 | }; 102 | 29B97317FDCFA39411CA2CEA /* Resources */ = { 103 | isa = PBXGroup; 104 | children = ( 105 | 0195D47A160A21110012C4A6 /* Default-568h@2x.png */, 106 | 2899E5210DE3E06400AC0155 /* iRateViewController.xib */, 107 | 28AD733E0D9D9553002E5188 /* MainWindow.xib */, 108 | ); 109 | name = Resources; 110 | sourceTree = ""; 111 | }; 112 | 29B97323FDCFA39411CA2CEA /* Frameworks */ = { 113 | isa = PBXGroup; 114 | children = ( 115 | 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */, 116 | 1D30AB110D05D00D00671497 /* Foundation.framework */, 117 | 288765A40DF7441C002DB57D /* CoreGraphics.framework */, 118 | 0160711F1660EF7000932AE1 /* StoreKit.framework */, 119 | ); 120 | name = Frameworks; 121 | sourceTree = ""; 122 | }; 123 | B205F2161462A82C00B69B0D /* iRate */ = { 124 | isa = PBXGroup; 125 | children = ( 126 | 01E880F715165AB900BFF881 /* iRate.bundle */, 127 | B205F2171462A82C00B69B0D /* iRate.h */, 128 | B205F2181462A82C00B69B0D /* iRate.m */, 129 | ); 130 | name = iRate; 131 | path = ../../iRate; 132 | sourceTree = ""; 133 | }; 134 | /* End PBXGroup section */ 135 | 136 | /* Begin PBXNativeTarget section */ 137 | 1D6058900D05DD3D006BFB54 /* ZeroConfig */ = { 138 | isa = PBXNativeTarget; 139 | buildConfigurationList = 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "ZeroConfig" */; 140 | buildPhases = ( 141 | 1D60588D0D05DD3D006BFB54 /* Resources */, 142 | 1D60588E0D05DD3D006BFB54 /* Sources */, 143 | 1D60588F0D05DD3D006BFB54 /* Frameworks */, 144 | ); 145 | buildRules = ( 146 | ); 147 | dependencies = ( 148 | ); 149 | name = ZeroConfig; 150 | productName = iVersion; 151 | productReference = 1D6058910D05DD3D006BFB54 /* ZeroConfig.app */; 152 | productType = "com.apple.product-type.application"; 153 | }; 154 | /* End PBXNativeTarget section */ 155 | 156 | /* Begin PBXProject section */ 157 | 29B97313FDCFA39411CA2CEA /* Project object */ = { 158 | isa = PBXProject; 159 | attributes = { 160 | LastUpgradeCheck = 0430; 161 | }; 162 | buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "ZeroConfig" */; 163 | compatibilityVersion = "Xcode 3.2"; 164 | developmentRegion = English; 165 | hasScannedForEncodings = 1; 166 | knownRegions = ( 167 | English, 168 | Japanese, 169 | French, 170 | German, 171 | ); 172 | mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */; 173 | projectDirPath = ""; 174 | projectRoot = ""; 175 | targets = ( 176 | 1D6058900D05DD3D006BFB54 /* ZeroConfig */, 177 | ); 178 | }; 179 | /* End PBXProject section */ 180 | 181 | /* Begin PBXResourcesBuildPhase section */ 182 | 1D60588D0D05DD3D006BFB54 /* Resources */ = { 183 | isa = PBXResourcesBuildPhase; 184 | buildActionMask = 2147483647; 185 | files = ( 186 | 28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */, 187 | 2899E5220DE3E06400AC0155 /* iRateViewController.xib in Resources */, 188 | 01E880F815165AB900BFF881 /* iRate.bundle in Resources */, 189 | 0195D47B160A21110012C4A6 /* Default-568h@2x.png in Resources */, 190 | ); 191 | runOnlyForDeploymentPostprocessing = 0; 192 | }; 193 | /* End PBXResourcesBuildPhase section */ 194 | 195 | /* Begin PBXSourcesBuildPhase section */ 196 | 1D60588E0D05DD3D006BFB54 /* Sources */ = { 197 | isa = PBXSourcesBuildPhase; 198 | buildActionMask = 2147483647; 199 | files = ( 200 | 1D60589B0D05DD56006BFB54 /* main.m in Sources */, 201 | 1D3623260D0F684500981E51 /* iRateAppDelegate.m in Sources */, 202 | 28D7ACF80DDB3853001CB0EB /* iRateViewController.m in Sources */, 203 | B205F2191462A82C00B69B0D /* iRate.m in Sources */, 204 | ); 205 | runOnlyForDeploymentPostprocessing = 0; 206 | }; 207 | /* End PBXSourcesBuildPhase section */ 208 | 209 | /* Begin XCBuildConfiguration section */ 210 | 1D6058940D05DD3E006BFB54 /* Debug */ = { 211 | isa = XCBuildConfiguration; 212 | buildSettings = { 213 | ALWAYS_SEARCH_USER_PATHS = NO; 214 | CLANG_ENABLE_OBJC_ARC = YES; 215 | COPY_PHASE_STRIP = NO; 216 | GCC_DYNAMIC_NO_PIC = NO; 217 | GCC_OPTIMIZATION_LEVEL = 0; 218 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 219 | GCC_PREFIX_HEADER = ZeroConfig_Prefix.pch; 220 | GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1"; 221 | GCC_TREAT_WARNINGS_AS_ERRORS = YES; 222 | INFOPLIST_FILE = "ZeroConfig-Info.plist"; 223 | IPHONEOS_DEPLOYMENT_TARGET = 6.0; 224 | PRODUCT_NAME = ZeroConfig; 225 | }; 226 | name = Debug; 227 | }; 228 | 1D6058950D05DD3E006BFB54 /* Release */ = { 229 | isa = XCBuildConfiguration; 230 | buildSettings = { 231 | ALWAYS_SEARCH_USER_PATHS = NO; 232 | CLANG_ENABLE_OBJC_ARC = YES; 233 | COPY_PHASE_STRIP = YES; 234 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 235 | GCC_PREFIX_HEADER = ZeroConfig_Prefix.pch; 236 | GCC_TREAT_WARNINGS_AS_ERRORS = YES; 237 | INFOPLIST_FILE = "ZeroConfig-Info.plist"; 238 | IPHONEOS_DEPLOYMENT_TARGET = 6.0; 239 | PRODUCT_NAME = ZeroConfig; 240 | VALIDATE_PRODUCT = YES; 241 | }; 242 | name = Release; 243 | }; 244 | C01FCF4F08A954540054247B /* Debug */ = { 245 | isa = XCBuildConfiguration; 246 | buildSettings = { 247 | ARCHS = "$(ARCHS_STANDARD_32_BIT)"; 248 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 249 | GCC_C_LANGUAGE_STANDARD = c99; 250 | GCC_TREAT_WARNINGS_AS_ERRORS = YES; 251 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 252 | GCC_WARN_UNUSED_VARIABLE = YES; 253 | IPHONEOS_DEPLOYMENT_TARGET = 3.0; 254 | RUN_CLANG_STATIC_ANALYZER = YES; 255 | SDKROOT = iphoneos; 256 | }; 257 | name = Debug; 258 | }; 259 | C01FCF5008A954540054247B /* Release */ = { 260 | isa = XCBuildConfiguration; 261 | buildSettings = { 262 | ARCHS = "$(ARCHS_STANDARD_32_BIT)"; 263 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 264 | GCC_C_LANGUAGE_STANDARD = c99; 265 | GCC_TREAT_WARNINGS_AS_ERRORS = YES; 266 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 267 | GCC_WARN_UNUSED_VARIABLE = YES; 268 | IPHONEOS_DEPLOYMENT_TARGET = 3.0; 269 | OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; 270 | RUN_CLANG_STATIC_ANALYZER = YES; 271 | SDKROOT = iphoneos; 272 | }; 273 | name = Release; 274 | }; 275 | /* End XCBuildConfiguration section */ 276 | 277 | /* Begin XCConfigurationList section */ 278 | 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "ZeroConfig" */ = { 279 | isa = XCConfigurationList; 280 | buildConfigurations = ( 281 | 1D6058940D05DD3E006BFB54 /* Debug */, 282 | 1D6058950D05DD3E006BFB54 /* Release */, 283 | ); 284 | defaultConfigurationIsVisible = 0; 285 | defaultConfigurationName = Release; 286 | }; 287 | C01FCF4E08A954540054247B /* Build configuration list for PBXProject "ZeroConfig" */ = { 288 | isa = XCConfigurationList; 289 | buildConfigurations = ( 290 | C01FCF4F08A954540054247B /* Debug */, 291 | C01FCF5008A954540054247B /* Release */, 292 | ); 293 | defaultConfigurationIsVisible = 0; 294 | defaultConfigurationName = Release; 295 | }; 296 | /* End XCConfigurationList section */ 297 | }; 298 | rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; 299 | } 300 | -------------------------------------------------------------------------------- /iRate.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 3A2D4EDA1B90E4A900F3F94E /* iRate.h in Headers */ = {isa = PBXBuildFile; fileRef = 3A2D4ED91B90E4A900F3F94E /* iRate.h */; settings = {ATTRIBUTES = (Public, ); }; }; 11 | 3A2D4EE21B90E68D00F3F94E /* iRate.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A2D4EE11B90E68D00F3F94E /* iRate.m */; settings = {ASSET_TAGS = (); }; }; 12 | 3A2D4EE51B90EE9900F3F94E /* iRate.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A2D4EE11B90E68D00F3F94E /* iRate.m */; settings = {ASSET_TAGS = (); }; }; 13 | 3A2D4EE81B90EE9900F3F94E /* iRate.h in Headers */ = {isa = PBXBuildFile; fileRef = 3A2D4ED91B90E4A900F3F94E /* iRate.h */; settings = {ATTRIBUTES = (Public, ); }; }; 14 | /* End PBXBuildFile section */ 15 | 16 | /* Begin PBXFileReference section */ 17 | 3A2D4ED61B90E4A900F3F94E /* iRate.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = iRate.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 18 | 3A2D4ED91B90E4A900F3F94E /* iRate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = iRate.h; sourceTree = ""; }; 19 | 3A2D4EDB1B90E4A900F3F94E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 20 | 3A2D4EE11B90E68D00F3F94E /* iRate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iRate.m; sourceTree = ""; }; 21 | 3A2D4EED1B90EE9900F3F94E /* iRate.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = iRate.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 22 | /* End PBXFileReference section */ 23 | 24 | /* Begin PBXFrameworksBuildPhase section */ 25 | 3A2D4ED21B90E4A900F3F94E /* Frameworks */ = { 26 | isa = PBXFrameworksBuildPhase; 27 | buildActionMask = 2147483647; 28 | files = ( 29 | ); 30 | runOnlyForDeploymentPostprocessing = 0; 31 | }; 32 | 3A2D4EE61B90EE9900F3F94E /* Frameworks */ = { 33 | isa = PBXFrameworksBuildPhase; 34 | buildActionMask = 2147483647; 35 | files = ( 36 | ); 37 | runOnlyForDeploymentPostprocessing = 0; 38 | }; 39 | /* End PBXFrameworksBuildPhase section */ 40 | 41 | /* Begin PBXGroup section */ 42 | 3A2D4ECC1B90E4A900F3F94E = { 43 | isa = PBXGroup; 44 | children = ( 45 | 3A2D4ED81B90E4A900F3F94E /* iRate */, 46 | 3A2D4ED71B90E4A900F3F94E /* Products */, 47 | ); 48 | sourceTree = ""; 49 | }; 50 | 3A2D4ED71B90E4A900F3F94E /* Products */ = { 51 | isa = PBXGroup; 52 | children = ( 53 | 3A2D4ED61B90E4A900F3F94E /* iRate.framework */, 54 | 3A2D4EED1B90EE9900F3F94E /* iRate.framework */, 55 | ); 56 | name = Products; 57 | sourceTree = ""; 58 | }; 59 | 3A2D4ED81B90E4A900F3F94E /* iRate */ = { 60 | isa = PBXGroup; 61 | children = ( 62 | 3A2D4ED91B90E4A900F3F94E /* iRate.h */, 63 | 3A2D4EE11B90E68D00F3F94E /* iRate.m */, 64 | 3A2D4EDB1B90E4A900F3F94E /* Info.plist */, 65 | ); 66 | path = iRate; 67 | sourceTree = ""; 68 | }; 69 | /* End PBXGroup section */ 70 | 71 | /* Begin PBXHeadersBuildPhase section */ 72 | 3A2D4ED31B90E4A900F3F94E /* Headers */ = { 73 | isa = PBXHeadersBuildPhase; 74 | buildActionMask = 2147483647; 75 | files = ( 76 | 3A2D4EDA1B90E4A900F3F94E /* iRate.h in Headers */, 77 | ); 78 | runOnlyForDeploymentPostprocessing = 0; 79 | }; 80 | 3A2D4EE71B90EE9900F3F94E /* Headers */ = { 81 | isa = PBXHeadersBuildPhase; 82 | buildActionMask = 2147483647; 83 | files = ( 84 | 3A2D4EE81B90EE9900F3F94E /* iRate.h in Headers */, 85 | ); 86 | runOnlyForDeploymentPostprocessing = 0; 87 | }; 88 | /* End PBXHeadersBuildPhase section */ 89 | 90 | /* Begin PBXNativeTarget section */ 91 | 3A2D4ED51B90E4A900F3F94E /* iRate */ = { 92 | isa = PBXNativeTarget; 93 | buildConfigurationList = 3A2D4EDE1B90E4A900F3F94E /* Build configuration list for PBXNativeTarget "iRate" */; 94 | buildPhases = ( 95 | 3A2D4ED11B90E4A900F3F94E /* Sources */, 96 | 3A2D4ED21B90E4A900F3F94E /* Frameworks */, 97 | 3A2D4ED31B90E4A900F3F94E /* Headers */, 98 | 3A2D4ED41B90E4A900F3F94E /* Resources */, 99 | ); 100 | buildRules = ( 101 | ); 102 | dependencies = ( 103 | ); 104 | name = iRate; 105 | productName = iRate; 106 | productReference = 3A2D4ED61B90E4A900F3F94E /* iRate.framework */; 107 | productType = "com.apple.product-type.framework"; 108 | }; 109 | 3A2D4EE31B90EE9900F3F94E /* iRate-OSX */ = { 110 | isa = PBXNativeTarget; 111 | buildConfigurationList = 3A2D4EEA1B90EE9900F3F94E /* Build configuration list for PBXNativeTarget "iRate-OSX" */; 112 | buildPhases = ( 113 | 3A2D4EE41B90EE9900F3F94E /* Sources */, 114 | 3A2D4EE61B90EE9900F3F94E /* Frameworks */, 115 | 3A2D4EE71B90EE9900F3F94E /* Headers */, 116 | 3A2D4EE91B90EE9900F3F94E /* Resources */, 117 | ); 118 | buildRules = ( 119 | ); 120 | dependencies = ( 121 | ); 122 | name = "iRate-OSX"; 123 | productName = iRate; 124 | productReference = 3A2D4EED1B90EE9900F3F94E /* iRate.framework */; 125 | productType = "com.apple.product-type.framework"; 126 | }; 127 | /* End PBXNativeTarget section */ 128 | 129 | /* Begin PBXProject section */ 130 | 3A2D4ECD1B90E4A900F3F94E /* Project object */ = { 131 | isa = PBXProject; 132 | attributes = { 133 | LastUpgradeCheck = 0700; 134 | TargetAttributes = { 135 | 3A2D4ED51B90E4A900F3F94E = { 136 | CreatedOnToolsVersion = 7.0; 137 | }; 138 | }; 139 | }; 140 | buildConfigurationList = 3A2D4ED01B90E4A900F3F94E /* Build configuration list for PBXProject "iRate" */; 141 | compatibilityVersion = "Xcode 3.2"; 142 | developmentRegion = English; 143 | hasScannedForEncodings = 0; 144 | knownRegions = ( 145 | en, 146 | ); 147 | mainGroup = 3A2D4ECC1B90E4A900F3F94E; 148 | productRefGroup = 3A2D4ED71B90E4A900F3F94E /* Products */; 149 | projectDirPath = ""; 150 | projectRoot = ""; 151 | targets = ( 152 | 3A2D4ED51B90E4A900F3F94E /* iRate */, 153 | 3A2D4EE31B90EE9900F3F94E /* iRate-OSX */, 154 | ); 155 | }; 156 | /* End PBXProject section */ 157 | 158 | /* Begin PBXResourcesBuildPhase section */ 159 | 3A2D4ED41B90E4A900F3F94E /* Resources */ = { 160 | isa = PBXResourcesBuildPhase; 161 | buildActionMask = 2147483647; 162 | files = ( 163 | ); 164 | runOnlyForDeploymentPostprocessing = 0; 165 | }; 166 | 3A2D4EE91B90EE9900F3F94E /* Resources */ = { 167 | isa = PBXResourcesBuildPhase; 168 | buildActionMask = 2147483647; 169 | files = ( 170 | ); 171 | runOnlyForDeploymentPostprocessing = 0; 172 | }; 173 | /* End PBXResourcesBuildPhase section */ 174 | 175 | /* Begin PBXSourcesBuildPhase section */ 176 | 3A2D4ED11B90E4A900F3F94E /* Sources */ = { 177 | isa = PBXSourcesBuildPhase; 178 | buildActionMask = 2147483647; 179 | files = ( 180 | 3A2D4EE21B90E68D00F3F94E /* iRate.m in Sources */, 181 | ); 182 | runOnlyForDeploymentPostprocessing = 0; 183 | }; 184 | 3A2D4EE41B90EE9900F3F94E /* Sources */ = { 185 | isa = PBXSourcesBuildPhase; 186 | buildActionMask = 2147483647; 187 | files = ( 188 | 3A2D4EE51B90EE9900F3F94E /* iRate.m in Sources */, 189 | ); 190 | runOnlyForDeploymentPostprocessing = 0; 191 | }; 192 | /* End PBXSourcesBuildPhase section */ 193 | 194 | /* Begin XCBuildConfiguration section */ 195 | 3A2D4EDC1B90E4A900F3F94E /* Debug */ = { 196 | isa = XCBuildConfiguration; 197 | buildSettings = { 198 | ALWAYS_SEARCH_USER_PATHS = NO; 199 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 200 | CLANG_CXX_LIBRARY = "libc++"; 201 | CLANG_ENABLE_MODULES = YES; 202 | CLANG_ENABLE_OBJC_ARC = YES; 203 | CLANG_WARN_BOOL_CONVERSION = YES; 204 | CLANG_WARN_CONSTANT_CONVERSION = YES; 205 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 206 | CLANG_WARN_EMPTY_BODY = YES; 207 | CLANG_WARN_ENUM_CONVERSION = YES; 208 | CLANG_WARN_INT_CONVERSION = YES; 209 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 210 | CLANG_WARN_UNREACHABLE_CODE = YES; 211 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 212 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 213 | COPY_PHASE_STRIP = NO; 214 | CURRENT_PROJECT_VERSION = 1; 215 | DEBUG_INFORMATION_FORMAT = dwarf; 216 | ENABLE_STRICT_OBJC_MSGSEND = YES; 217 | ENABLE_TESTABILITY = YES; 218 | GCC_C_LANGUAGE_STANDARD = gnu99; 219 | GCC_DYNAMIC_NO_PIC = NO; 220 | GCC_NO_COMMON_BLOCKS = YES; 221 | GCC_OPTIMIZATION_LEVEL = 0; 222 | GCC_PREPROCESSOR_DEFINITIONS = ( 223 | "DEBUG=1", 224 | "$(inherited)", 225 | ); 226 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 227 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 228 | GCC_WARN_UNDECLARED_SELECTOR = YES; 229 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 230 | GCC_WARN_UNUSED_FUNCTION = YES; 231 | GCC_WARN_UNUSED_VARIABLE = YES; 232 | IPHONEOS_DEPLOYMENT_TARGET = 9.0; 233 | MTL_ENABLE_DEBUG_INFO = YES; 234 | ONLY_ACTIVE_ARCH = YES; 235 | SDKROOT = iphoneos; 236 | TARGETED_DEVICE_FAMILY = "1,2"; 237 | VERSIONING_SYSTEM = "apple-generic"; 238 | VERSION_INFO_PREFIX = ""; 239 | }; 240 | name = Debug; 241 | }; 242 | 3A2D4EDD1B90E4A900F3F94E /* Release */ = { 243 | isa = XCBuildConfiguration; 244 | buildSettings = { 245 | ALWAYS_SEARCH_USER_PATHS = NO; 246 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 247 | CLANG_CXX_LIBRARY = "libc++"; 248 | CLANG_ENABLE_MODULES = YES; 249 | CLANG_ENABLE_OBJC_ARC = YES; 250 | CLANG_WARN_BOOL_CONVERSION = YES; 251 | CLANG_WARN_CONSTANT_CONVERSION = YES; 252 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 253 | CLANG_WARN_EMPTY_BODY = YES; 254 | CLANG_WARN_ENUM_CONVERSION = YES; 255 | CLANG_WARN_INT_CONVERSION = YES; 256 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 257 | CLANG_WARN_UNREACHABLE_CODE = YES; 258 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 259 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 260 | COPY_PHASE_STRIP = NO; 261 | CURRENT_PROJECT_VERSION = 1; 262 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 263 | ENABLE_NS_ASSERTIONS = NO; 264 | ENABLE_STRICT_OBJC_MSGSEND = YES; 265 | GCC_C_LANGUAGE_STANDARD = gnu99; 266 | GCC_NO_COMMON_BLOCKS = YES; 267 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 268 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 269 | GCC_WARN_UNDECLARED_SELECTOR = YES; 270 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 271 | GCC_WARN_UNUSED_FUNCTION = YES; 272 | GCC_WARN_UNUSED_VARIABLE = YES; 273 | IPHONEOS_DEPLOYMENT_TARGET = 9.0; 274 | MTL_ENABLE_DEBUG_INFO = NO; 275 | SDKROOT = iphoneos; 276 | TARGETED_DEVICE_FAMILY = "1,2"; 277 | VALIDATE_PRODUCT = YES; 278 | VERSIONING_SYSTEM = "apple-generic"; 279 | VERSION_INFO_PREFIX = ""; 280 | }; 281 | name = Release; 282 | }; 283 | 3A2D4EDF1B90E4A900F3F94E /* Debug */ = { 284 | isa = XCBuildConfiguration; 285 | buildSettings = { 286 | APPLICATION_EXTENSION_API_ONLY = NO; 287 | DEFINES_MODULE = YES; 288 | DYLIB_COMPATIBILITY_VERSION = 1; 289 | DYLIB_CURRENT_VERSION = 1; 290 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 291 | INFOPLIST_FILE = iRate/Info.plist; 292 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 293 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 294 | PRODUCT_BUNDLE_IDENTIFIER = uk.co.charcoaldesigns.iRate; 295 | PRODUCT_NAME = "$(TARGET_NAME)"; 296 | SKIP_INSTALL = YES; 297 | }; 298 | name = Debug; 299 | }; 300 | 3A2D4EE01B90E4A900F3F94E /* Release */ = { 301 | isa = XCBuildConfiguration; 302 | buildSettings = { 303 | APPLICATION_EXTENSION_API_ONLY = NO; 304 | DEFINES_MODULE = YES; 305 | DYLIB_COMPATIBILITY_VERSION = 1; 306 | DYLIB_CURRENT_VERSION = 1; 307 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 308 | INFOPLIST_FILE = iRate/Info.plist; 309 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 310 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 311 | PRODUCT_BUNDLE_IDENTIFIER = uk.co.charcoaldesigns.iRate; 312 | PRODUCT_NAME = "$(TARGET_NAME)"; 313 | SKIP_INSTALL = YES; 314 | }; 315 | name = Release; 316 | }; 317 | 3A2D4EEB1B90EE9900F3F94E /* Debug */ = { 318 | isa = XCBuildConfiguration; 319 | buildSettings = { 320 | APPLICATION_EXTENSION_API_ONLY = NO; 321 | DEFINES_MODULE = YES; 322 | DYLIB_COMPATIBILITY_VERSION = 1; 323 | DYLIB_CURRENT_VERSION = 1; 324 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 325 | INFOPLIST_FILE = iRate/Info.plist; 326 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 327 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 328 | PRODUCT_BUNDLE_IDENTIFIER = uk.co.charcoaldesigns.iRate; 329 | PRODUCT_NAME = iRate; 330 | SKIP_INSTALL = YES; 331 | }; 332 | name = Debug; 333 | }; 334 | 3A2D4EEC1B90EE9900F3F94E /* Release */ = { 335 | isa = XCBuildConfiguration; 336 | buildSettings = { 337 | APPLICATION_EXTENSION_API_ONLY = NO; 338 | DEFINES_MODULE = YES; 339 | DYLIB_COMPATIBILITY_VERSION = 1; 340 | DYLIB_CURRENT_VERSION = 1; 341 | DYLIB_INSTALL_NAME_BASE = "@rpath"; 342 | INFOPLIST_FILE = iRate/Info.plist; 343 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; 344 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; 345 | PRODUCT_BUNDLE_IDENTIFIER = uk.co.charcoaldesigns.iRate; 346 | PRODUCT_NAME = iRate; 347 | SKIP_INSTALL = YES; 348 | }; 349 | name = Release; 350 | }; 351 | /* End XCBuildConfiguration section */ 352 | 353 | /* Begin XCConfigurationList section */ 354 | 3A2D4ED01B90E4A900F3F94E /* Build configuration list for PBXProject "iRate" */ = { 355 | isa = XCConfigurationList; 356 | buildConfigurations = ( 357 | 3A2D4EDC1B90E4A900F3F94E /* Debug */, 358 | 3A2D4EDD1B90E4A900F3F94E /* Release */, 359 | ); 360 | defaultConfigurationIsVisible = 0; 361 | defaultConfigurationName = Release; 362 | }; 363 | 3A2D4EDE1B90E4A900F3F94E /* Build configuration list for PBXNativeTarget "iRate" */ = { 364 | isa = XCConfigurationList; 365 | buildConfigurations = ( 366 | 3A2D4EDF1B90E4A900F3F94E /* Debug */, 367 | 3A2D4EE01B90E4A900F3F94E /* Release */, 368 | ); 369 | defaultConfigurationIsVisible = 0; 370 | defaultConfigurationName = Release; 371 | }; 372 | 3A2D4EEA1B90EE9900F3F94E /* Build configuration list for PBXNativeTarget "iRate-OSX" */ = { 373 | isa = XCConfigurationList; 374 | buildConfigurations = ( 375 | 3A2D4EEB1B90EE9900F3F94E /* Debug */, 376 | 3A2D4EEC1B90EE9900F3F94E /* Release */, 377 | ); 378 | defaultConfigurationIsVisible = 0; 379 | defaultConfigurationName = Release; 380 | }; 381 | /* End XCConfigurationList section */ 382 | }; 383 | rootObject = 3A2D4ECD1B90E4A900F3F94E /* Project object */; 384 | } 385 | -------------------------------------------------------------------------------- /Examples/iPhone Demo/iPhoneDemo.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 135A33D619EB1293004B8F17 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 135A33D519EB1293004B8F17 /* main.m */; }; 11 | 135A33D919EB1293004B8F17 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 135A33D819EB1293004B8F17 /* AppDelegate.m */; }; 12 | 135A33DC19EB1293004B8F17 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 135A33DB19EB1293004B8F17 /* ViewController.m */; }; 13 | 135A33DF19EB1293004B8F17 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 135A33DD19EB1293004B8F17 /* Main.storyboard */; }; 14 | 135A33E119EB1293004B8F17 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 135A33E019EB1293004B8F17 /* Images.xcassets */; }; 15 | 135A33E419EB1293004B8F17 /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 135A33E219EB1293004B8F17 /* LaunchScreen.xib */; }; 16 | 13BDD52119EB26150060C341 /* iRate.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 13BDD51E19EB26150060C341 /* iRate.bundle */; }; 17 | 13BDD52219EB26150060C341 /* iRate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13BDD52019EB26150060C341 /* iRate.m */; }; 18 | /* End PBXBuildFile section */ 19 | 20 | /* Begin PBXFileReference section */ 21 | 135A33D019EB1293004B8F17 /* iPhoneDemo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = iPhoneDemo.app; sourceTree = BUILT_PRODUCTS_DIR; }; 22 | 135A33D419EB1293004B8F17 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 23 | 135A33D519EB1293004B8F17 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 24 | 135A33D719EB1293004B8F17 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; 25 | 135A33D819EB1293004B8F17 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; 26 | 135A33DA19EB1293004B8F17 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; }; 27 | 135A33DB19EB1293004B8F17 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = ""; }; 28 | 135A33DE19EB1293004B8F17 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; 29 | 135A33E019EB1293004B8F17 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 30 | 135A33E319EB1293004B8F17 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; 31 | 13BDD51E19EB26150060C341 /* iRate.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = iRate.bundle; sourceTree = ""; }; 32 | 13BDD51F19EB26150060C341 /* iRate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = iRate.h; sourceTree = ""; }; 33 | 13BDD52019EB26150060C341 /* iRate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = iRate.m; sourceTree = ""; }; 34 | /* End PBXFileReference section */ 35 | 36 | /* Begin PBXFrameworksBuildPhase section */ 37 | 135A33CD19EB1293004B8F17 /* Frameworks */ = { 38 | isa = PBXFrameworksBuildPhase; 39 | buildActionMask = 2147483647; 40 | files = ( 41 | ); 42 | runOnlyForDeploymentPostprocessing = 0; 43 | }; 44 | /* End PBXFrameworksBuildPhase section */ 45 | 46 | /* Begin PBXGroup section */ 47 | 135A33C719EB1293004B8F17 = { 48 | isa = PBXGroup; 49 | children = ( 50 | 13BDD51D19EB26150060C341 /* iRate */, 51 | 135A33D219EB1293004B8F17 /* iPhoneDemo */, 52 | 135A33D119EB1293004B8F17 /* Products */, 53 | ); 54 | indentWidth = 4; 55 | sourceTree = ""; 56 | tabWidth = 4; 57 | }; 58 | 135A33D119EB1293004B8F17 /* Products */ = { 59 | isa = PBXGroup; 60 | children = ( 61 | 135A33D019EB1293004B8F17 /* iPhoneDemo.app */, 62 | ); 63 | name = Products; 64 | sourceTree = ""; 65 | }; 66 | 135A33D219EB1293004B8F17 /* iPhoneDemo */ = { 67 | isa = PBXGroup; 68 | children = ( 69 | 135A33D719EB1293004B8F17 /* AppDelegate.h */, 70 | 135A33D819EB1293004B8F17 /* AppDelegate.m */, 71 | 135A33DA19EB1293004B8F17 /* ViewController.h */, 72 | 135A33DB19EB1293004B8F17 /* ViewController.m */, 73 | 135A33DD19EB1293004B8F17 /* Main.storyboard */, 74 | 135A33E019EB1293004B8F17 /* Images.xcassets */, 75 | 135A33E219EB1293004B8F17 /* LaunchScreen.xib */, 76 | 135A33D319EB1293004B8F17 /* Supporting Files */, 77 | ); 78 | path = iPhoneDemo; 79 | sourceTree = ""; 80 | }; 81 | 135A33D319EB1293004B8F17 /* Supporting Files */ = { 82 | isa = PBXGroup; 83 | children = ( 84 | 135A33D419EB1293004B8F17 /* Info.plist */, 85 | 135A33D519EB1293004B8F17 /* main.m */, 86 | ); 87 | name = "Supporting Files"; 88 | sourceTree = ""; 89 | }; 90 | 13BDD51D19EB26150060C341 /* iRate */ = { 91 | isa = PBXGroup; 92 | children = ( 93 | 13BDD51E19EB26150060C341 /* iRate.bundle */, 94 | 13BDD51F19EB26150060C341 /* iRate.h */, 95 | 13BDD52019EB26150060C341 /* iRate.m */, 96 | ); 97 | name = iRate; 98 | path = ../../iRate; 99 | sourceTree = ""; 100 | }; 101 | /* End PBXGroup section */ 102 | 103 | /* Begin PBXNativeTarget section */ 104 | 135A33CF19EB1293004B8F17 /* iPhoneDemo */ = { 105 | isa = PBXNativeTarget; 106 | buildConfigurationList = 135A33F319EB1294004B8F17 /* Build configuration list for PBXNativeTarget "iPhoneDemo" */; 107 | buildPhases = ( 108 | 135A33CC19EB1293004B8F17 /* Sources */, 109 | 135A33CD19EB1293004B8F17 /* Frameworks */, 110 | 135A33CE19EB1293004B8F17 /* Resources */, 111 | ); 112 | buildRules = ( 113 | ); 114 | dependencies = ( 115 | ); 116 | name = iPhoneDemo; 117 | productName = iPhoneDemo; 118 | productReference = 135A33D019EB1293004B8F17 /* iPhoneDemo.app */; 119 | productType = "com.apple.product-type.application"; 120 | }; 121 | /* End PBXNativeTarget section */ 122 | 123 | /* Begin PBXProject section */ 124 | 135A33C819EB1293004B8F17 /* Project object */ = { 125 | isa = PBXProject; 126 | attributes = { 127 | LastUpgradeCheck = 0600; 128 | ORGANIZATIONNAME = "Charcoal Design"; 129 | TargetAttributes = { 130 | 135A33CF19EB1293004B8F17 = { 131 | CreatedOnToolsVersion = 6.0.1; 132 | }; 133 | }; 134 | }; 135 | buildConfigurationList = 135A33CB19EB1293004B8F17 /* Build configuration list for PBXProject "iPhoneDemo" */; 136 | compatibilityVersion = "Xcode 3.2"; 137 | developmentRegion = English; 138 | hasScannedForEncodings = 0; 139 | knownRegions = ( 140 | en, 141 | Base, 142 | ); 143 | mainGroup = 135A33C719EB1293004B8F17; 144 | productRefGroup = 135A33D119EB1293004B8F17 /* Products */; 145 | projectDirPath = ""; 146 | projectRoot = ""; 147 | targets = ( 148 | 135A33CF19EB1293004B8F17 /* iPhoneDemo */, 149 | ); 150 | }; 151 | /* End PBXProject section */ 152 | 153 | /* Begin PBXResourcesBuildPhase section */ 154 | 135A33CE19EB1293004B8F17 /* Resources */ = { 155 | isa = PBXResourcesBuildPhase; 156 | buildActionMask = 2147483647; 157 | files = ( 158 | 135A33DF19EB1293004B8F17 /* Main.storyboard in Resources */, 159 | 13BDD52119EB26150060C341 /* iRate.bundle in Resources */, 160 | 135A33E419EB1293004B8F17 /* LaunchScreen.xib in Resources */, 161 | 135A33E119EB1293004B8F17 /* Images.xcassets in Resources */, 162 | ); 163 | runOnlyForDeploymentPostprocessing = 0; 164 | }; 165 | /* End PBXResourcesBuildPhase section */ 166 | 167 | /* Begin PBXSourcesBuildPhase section */ 168 | 135A33CC19EB1293004B8F17 /* Sources */ = { 169 | isa = PBXSourcesBuildPhase; 170 | buildActionMask = 2147483647; 171 | files = ( 172 | 135A33DC19EB1293004B8F17 /* ViewController.m in Sources */, 173 | 135A33D919EB1293004B8F17 /* AppDelegate.m in Sources */, 174 | 135A33D619EB1293004B8F17 /* main.m in Sources */, 175 | 13BDD52219EB26150060C341 /* iRate.m in Sources */, 176 | ); 177 | runOnlyForDeploymentPostprocessing = 0; 178 | }; 179 | /* End PBXSourcesBuildPhase section */ 180 | 181 | /* Begin PBXVariantGroup section */ 182 | 135A33DD19EB1293004B8F17 /* Main.storyboard */ = { 183 | isa = PBXVariantGroup; 184 | children = ( 185 | 135A33DE19EB1293004B8F17 /* Base */, 186 | ); 187 | name = Main.storyboard; 188 | sourceTree = ""; 189 | }; 190 | 135A33E219EB1293004B8F17 /* LaunchScreen.xib */ = { 191 | isa = PBXVariantGroup; 192 | children = ( 193 | 135A33E319EB1293004B8F17 /* Base */, 194 | ); 195 | name = LaunchScreen.xib; 196 | sourceTree = ""; 197 | }; 198 | /* End PBXVariantGroup section */ 199 | 200 | /* Begin XCBuildConfiguration section */ 201 | 135A33F119EB1294004B8F17 /* Debug */ = { 202 | isa = XCBuildConfiguration; 203 | buildSettings = { 204 | ALWAYS_SEARCH_USER_PATHS = NO; 205 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 206 | CLANG_CXX_LIBRARY = "libc++"; 207 | CLANG_ENABLE_MODULES = YES; 208 | CLANG_ENABLE_OBJC_ARC = YES; 209 | CLANG_WARN_ASSIGN_ENUM = YES; 210 | CLANG_WARN_BOOL_CONVERSION = YES; 211 | CLANG_WARN_CONSTANT_CONVERSION = YES; 212 | CLANG_WARN_CXX0X_EXTENSIONS = YES; 213 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 214 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 215 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 216 | CLANG_WARN_EMPTY_BODY = YES; 217 | CLANG_WARN_ENUM_CONVERSION = YES; 218 | CLANG_WARN_IMPLICIT_SIGN_CONVERSION = YES; 219 | CLANG_WARN_INT_CONVERSION = YES; 220 | CLANG_WARN_OBJC_EXPLICIT_OWNERSHIP_TYPE = YES; 221 | CLANG_WARN_OBJC_IMPLICIT_ATOMIC_PROPERTIES = YES; 222 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 223 | CLANG_WARN_OBJC_MISSING_PROPERTY_SYNTHESIS = YES; 224 | CLANG_WARN_OBJC_RECEIVER_WEAK = YES; 225 | CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES; 226 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 227 | CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = YES; 228 | CLANG_WARN_UNREACHABLE_CODE = YES; 229 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 230 | CLANG_WARN__EXIT_TIME_DESTRUCTORS = YES; 231 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 232 | COPY_PHASE_STRIP = NO; 233 | ENABLE_STRICT_OBJC_MSGSEND = YES; 234 | GCC_C_LANGUAGE_STANDARD = gnu99; 235 | GCC_DYNAMIC_NO_PIC = NO; 236 | GCC_OPTIMIZATION_LEVEL = 0; 237 | GCC_PREPROCESSOR_DEFINITIONS = ( 238 | "DEBUG=1", 239 | "$(inherited)", 240 | ); 241 | GCC_SHORT_ENUMS = YES; 242 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 243 | GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES; 244 | GCC_TREAT_INCOMPATIBLE_POINTER_TYPE_WARNINGS_AS_ERRORS = YES; 245 | GCC_TREAT_WARNINGS_AS_ERRORS = YES; 246 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 247 | GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES; 248 | GCC_WARN_ABOUT_MISSING_NEWLINE = YES; 249 | GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; 250 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 251 | GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES; 252 | GCC_WARN_HIDDEN_VIRTUAL_FUNCTIONS = YES; 253 | GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES; 254 | GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = YES; 255 | GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; 256 | GCC_WARN_PEDANTIC = YES; 257 | GCC_WARN_SHADOW = YES; 258 | GCC_WARN_SIGN_COMPARE = YES; 259 | GCC_WARN_STRICT_SELECTOR_MATCH = YES; 260 | GCC_WARN_UNDECLARED_SELECTOR = YES; 261 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 262 | GCC_WARN_UNKNOWN_PRAGMAS = YES; 263 | GCC_WARN_UNUSED_FUNCTION = YES; 264 | GCC_WARN_UNUSED_LABEL = YES; 265 | GCC_WARN_UNUSED_PARAMETER = YES; 266 | GCC_WARN_UNUSED_VARIABLE = YES; 267 | MTL_ENABLE_DEBUG_INFO = YES; 268 | ONLY_ACTIVE_ARCH = YES; 269 | SDKROOT = iphoneos; 270 | }; 271 | name = Debug; 272 | }; 273 | 135A33F219EB1294004B8F17 /* Release */ = { 274 | isa = XCBuildConfiguration; 275 | buildSettings = { 276 | ALWAYS_SEARCH_USER_PATHS = NO; 277 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 278 | CLANG_CXX_LIBRARY = "libc++"; 279 | CLANG_ENABLE_MODULES = YES; 280 | CLANG_ENABLE_OBJC_ARC = YES; 281 | CLANG_WARN_ASSIGN_ENUM = YES; 282 | CLANG_WARN_BOOL_CONVERSION = YES; 283 | CLANG_WARN_CONSTANT_CONVERSION = YES; 284 | CLANG_WARN_CXX0X_EXTENSIONS = YES; 285 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 286 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 287 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES; 288 | CLANG_WARN_EMPTY_BODY = YES; 289 | CLANG_WARN_ENUM_CONVERSION = YES; 290 | CLANG_WARN_IMPLICIT_SIGN_CONVERSION = YES; 291 | CLANG_WARN_INT_CONVERSION = YES; 292 | CLANG_WARN_OBJC_EXPLICIT_OWNERSHIP_TYPE = YES; 293 | CLANG_WARN_OBJC_IMPLICIT_ATOMIC_PROPERTIES = YES; 294 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 295 | CLANG_WARN_OBJC_MISSING_PROPERTY_SYNTHESIS = YES; 296 | CLANG_WARN_OBJC_RECEIVER_WEAK = YES; 297 | CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES; 298 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 299 | CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = YES; 300 | CLANG_WARN_UNREACHABLE_CODE = YES; 301 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 302 | CLANG_WARN__EXIT_TIME_DESTRUCTORS = YES; 303 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 304 | COPY_PHASE_STRIP = YES; 305 | ENABLE_NS_ASSERTIONS = NO; 306 | ENABLE_STRICT_OBJC_MSGSEND = YES; 307 | GCC_C_LANGUAGE_STANDARD = gnu99; 308 | GCC_SHORT_ENUMS = YES; 309 | GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES; 310 | GCC_TREAT_INCOMPATIBLE_POINTER_TYPE_WARNINGS_AS_ERRORS = YES; 311 | GCC_TREAT_WARNINGS_AS_ERRORS = YES; 312 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 313 | GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES; 314 | GCC_WARN_ABOUT_MISSING_NEWLINE = YES; 315 | GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; 316 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 317 | GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES; 318 | GCC_WARN_HIDDEN_VIRTUAL_FUNCTIONS = YES; 319 | GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES; 320 | GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = YES; 321 | GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; 322 | GCC_WARN_PEDANTIC = YES; 323 | GCC_WARN_SHADOW = YES; 324 | GCC_WARN_SIGN_COMPARE = YES; 325 | GCC_WARN_STRICT_SELECTOR_MATCH = YES; 326 | GCC_WARN_UNDECLARED_SELECTOR = YES; 327 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 328 | GCC_WARN_UNKNOWN_PRAGMAS = YES; 329 | GCC_WARN_UNUSED_FUNCTION = YES; 330 | GCC_WARN_UNUSED_LABEL = YES; 331 | GCC_WARN_UNUSED_PARAMETER = YES; 332 | GCC_WARN_UNUSED_VARIABLE = YES; 333 | MTL_ENABLE_DEBUG_INFO = NO; 334 | SDKROOT = iphoneos; 335 | VALIDATE_PRODUCT = YES; 336 | }; 337 | name = Release; 338 | }; 339 | 135A33F419EB1294004B8F17 /* Debug */ = { 340 | isa = XCBuildConfiguration; 341 | buildSettings = { 342 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 343 | GCC_TREAT_WARNINGS_AS_ERRORS = NO; 344 | INFOPLIST_FILE = iPhoneDemo/Info.plist; 345 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 346 | PRODUCT_NAME = "$(TARGET_NAME)"; 347 | }; 348 | name = Debug; 349 | }; 350 | 135A33F519EB1294004B8F17 /* Release */ = { 351 | isa = XCBuildConfiguration; 352 | buildSettings = { 353 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 354 | GCC_TREAT_WARNINGS_AS_ERRORS = NO; 355 | INFOPLIST_FILE = iPhoneDemo/Info.plist; 356 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 357 | PRODUCT_NAME = "$(TARGET_NAME)"; 358 | }; 359 | name = Release; 360 | }; 361 | /* End XCBuildConfiguration section */ 362 | 363 | /* Begin XCConfigurationList section */ 364 | 135A33CB19EB1293004B8F17 /* Build configuration list for PBXProject "iPhoneDemo" */ = { 365 | isa = XCConfigurationList; 366 | buildConfigurations = ( 367 | 135A33F119EB1294004B8F17 /* Debug */, 368 | 135A33F219EB1294004B8F17 /* Release */, 369 | ); 370 | defaultConfigurationIsVisible = 0; 371 | defaultConfigurationName = Release; 372 | }; 373 | 135A33F319EB1294004B8F17 /* Build configuration list for PBXNativeTarget "iPhoneDemo" */ = { 374 | isa = XCConfigurationList; 375 | buildConfigurations = ( 376 | 135A33F419EB1294004B8F17 /* Debug */, 377 | 135A33F519EB1294004B8F17 /* Release */, 378 | ); 379 | defaultConfigurationIsVisible = 0; 380 | defaultConfigurationName = Release; 381 | }; 382 | /* End XCConfigurationList section */ 383 | }; 384 | rootObject = 135A33C819EB1293004B8F17 /* Project object */; 385 | } 386 | --------------------------------------------------------------------------------