Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

a bunch of the initial app

  • Loading branch information...
commit 870f3cb6b63a6cdc83ce97e710e8639e59f0e5ed 1 parent a2df4f3
Reid van Melle rvanmelle authored
Showing with 18,470 additions and 25 deletions.
  1. +11 −0 .gitignore
  2. +57 −0 Classes/RunKeeper.h
  3. +276 −0 Classes/RunKeeper.m
  4. +8 −25 README.md
  5. BIN  images/connect-blue-black-300x57.png
  6. +749 −0 runkeepersample/runkeepersample.xcodeproj/project.pbxproj
  7. +17 −0 runkeepersample/runkeepersample/PositionTracker.h
  8. +40 −0 runkeepersample/runkeepersample/PositionTracker.m
  9. +22 −0 runkeepersample/runkeepersample/RootViewController.h
  10. +84 −0 runkeepersample/runkeepersample/RootViewController.m
  11. BIN  runkeepersample/runkeepersample/connect-blue-black-300x57.png
  12. +2 −0  runkeepersample/runkeepersample/en.lproj/InfoPlist.strings
  13. +542 −0 runkeepersample/runkeepersample/en.lproj/MainWindow.xib
  14. +337 −0 runkeepersample/runkeepersample/en.lproj/RootViewController.xib
  15. +17 −0 runkeepersample/runkeepersample/main.m
  16. +38 −0 runkeepersample/runkeepersample/runkeepersample-Info.plist
  17. +14 −0 runkeepersample/runkeepersample/runkeepersample-Prefix.pch
  18. +19 −0 runkeepersample/runkeepersample/runkeepersampleAppDelegate.h
  19. +73 −0 runkeepersample/runkeepersample/runkeepersampleAppDelegate.m
  20. +2 −0  runkeepersample/runkeepersampleTests/en.lproj/InfoPlist.strings
  21. +22 −0 runkeepersample/runkeepersampleTests/runkeepersampleTests-Info.plist
  22. +7 −0 runkeepersample/runkeepersampleTests/runkeepersampleTests-Prefix.pch
  23. +17 −0 runkeepersample/runkeepersampleTests/runkeepersampleTests.h
  24. +33 −0 runkeepersample/runkeepersampleTests/runkeepersampleTests.m
  25. +35 −0 vendor/ASI/ASIAuthenticationDialog.h
  26. +487 −0 vendor/ASI/ASIAuthenticationDialog.m
  27. +103 −0 vendor/ASI/ASICacheDelegate.h
  28. +42 −0 vendor/ASI/ASIDataCompressor.h
  29. +219 −0 vendor/ASI/ASIDataCompressor.m
  30. +41 −0 vendor/ASI/ASIDataDecompressor.h
  31. +218 −0 vendor/ASI/ASIDataDecompressor.m
  32. +46 −0 vendor/ASI/ASIDownloadCache.h
  33. +514 −0 vendor/ASI/ASIDownloadCache.m
  34. +76 −0 vendor/ASI/ASIFormDataRequest.h
  35. +361 −0 vendor/ASI/ASIFormDataRequest.m
  36. +1,004 −0 vendor/ASI/ASIHTTPRequest.h
  37. +5,107 −0 vendor/ASI/ASIHTTPRequest.m
  38. +37 −0 vendor/ASI/ASIHTTPRequestConfig.h
  39. +35 −0 vendor/ASI/ASIHTTPRequestDelegate.h
  40. +26 −0 vendor/ASI/ASIInputStream.h
  41. +138 −0 vendor/ASI/ASIInputStream.m
  42. +108 −0 vendor/ASI/ASINetworkQueue.h
  43. +343 −0 vendor/ASI/ASINetworkQueue.m
  44. +38 −0 vendor/ASI/ASIProgressDelegate.h
  45. +25 −0 vendor/OAuth2Client/NSData+NXOAuth2.h
  46. +48 −0 vendor/OAuth2Client/NSData+NXOAuth2.m
  47. +27 −0 vendor/OAuth2Client/NSString+NXOAuth2.h
  48. +81 −0 vendor/OAuth2Client/NSString+NXOAuth2.m
  49. +29 −0 vendor/OAuth2Client/NSURL+NXOAuth2.h
  50. +56 −0 vendor/OAuth2Client/NSURL+NXOAuth2.m
  51. +26 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2.h
  52. +47 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2AccessToken.h
  53. +288 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2AccessToken.m
  54. +108 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2Client.h
  55. +369 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2Client.m
  56. +28 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2ClientDelegate.h
  57. +97 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2Connection.h
  58. +582 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2Connection.m
  59. +60 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2ConnectionDelegate.h
  60. +108 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2Constants.h
  61. +40 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2Constants.m
  62. +31 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2FileStreamWrapper.h
  63. +69 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2FileStreamWrapper.m
  64. +43 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2PostBodyPart.h
  65. +130 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2PostBodyPart.m
  66. +33 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2PostBodyStream.h
  67. +224 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2PostBodyStream.m
  68. +37 −0 vendor/OAuth2Client/OAuth2Client/NXOAuth2TrustDelegate.h
  69. +16 −0 vendor/OAuth2Client/OAuth2Client_Prefix.pch
  70. +193 −0 vendor/Reachability.h
  71. +814 −0 vendor/Reachability.m
  72. +67 −0 vendor/SBJson/NSObject+SBJson.h
  73. +58 −0 vendor/SBJson/NSObject+SBJson.m
  74. +84 −0 vendor/SBJson/SBJson.h
  75. +101 −0 vendor/SBJson/SBJsonParser.h
  76. +104 −0 vendor/SBJson/SBJsonParser.m
  77. +161 −0 vendor/SBJson/SBJsonStreamParser.h
  78. +264 −0 vendor/SBJson/SBJsonStreamParser.m
  79. +37 −0 vendor/SBJson/SBJsonStreamParserAccumulator.h
  80. +51 −0 vendor/SBJson/SBJsonStreamParserAccumulator.m
  81. +148 −0 vendor/SBJson/SBJsonStreamParserAdapter.h
  82. +171 −0 vendor/SBJson/SBJsonStreamParserAdapter.m
  83. +83 −0 vendor/SBJson/SBJsonStreamParserState.h
  84. +355 −0 vendor/SBJson/SBJsonStreamParserState.m
  85. +188 −0 vendor/SBJson/SBJsonStreamWriter.h
  86. +370 −0 vendor/SBJson/SBJsonStreamWriter.m
  87. +36 −0 vendor/SBJson/SBJsonStreamWriterAccumulator.h
  88. +56 −0 vendor/SBJson/SBJsonStreamWriterAccumulator.m
  89. +69 −0 vendor/SBJson/SBJsonStreamWriterState.h
  90. +139 −0 vendor/SBJson/SBJsonStreamWriterState.m
  91. +67 −0 vendor/SBJson/SBJsonTokeniser.h
  92. +463 −0 vendor/SBJson/SBJsonTokeniser.m
  93. +58 −0 vendor/SBJson/SBJsonUTF8Stream.h
  94. +143 −0 vendor/SBJson/SBJsonUTF8Stream.m
  95. +110 −0 vendor/SBJson/SBJsonWriter.h
  96. +113 −0 vendor/SBJson/SBJsonWriter.m
11 .gitignore
View
@@ -0,0 +1,11 @@
+# Xcode noise
+build
+*.pbxuser
+*.mode1v3
+*.mode2v3
+*.xcworkspace
+xcuserdata
+
+# OS X noise
+.DS_Store
+tmp
57 Classes/RunKeeper.h
View
@@ -0,0 +1,57 @@
+//
+// RunKeeper.h
+// rrgps-iphone
+//
+// Created by Reid van Melle on 11-09-14.
+// Copyright 2011 Brierwood Design Co-operative. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import "NXOAuth2.h"
+
+typedef void(^RIBasicCompletionBlock)(void);
+typedef void(^RIJSONCompletionBlock)(id json);
+typedef void(^RINSStringCompletionBlock)(NSString *msg);
+typedef void(^RIBasicFailedBlock)(void);
+typedef void(^RIErrorDictFailedBlock)(NSDictionary *errors);
+
+typedef enum {
+ kRKRunning,
+ kRKCycling,
+ kRKMountainBiking,
+ kRKWalking,
+ kRKHiking,
+ kRKDownhillSkiing,
+ kRKXCountrySkiing,
+ kRKSnowboarding,
+ kRKSkating,
+ kRKSwimming,
+ kRKWheelchair,
+ kRKRowing,
+ kRKElliptical,
+ kRKOther
+} RunKeeperActivityType;
+
+@interface RunKeeper : NSObject <NXOAuth2ClientDelegate> {
+ NXOAuth2Client *oauthClient;
+ BOOL connected;
+ NSDictionary *paths;
+ NSNumber *userID;
+}
+
+@property (nonatomic, retain, readonly) NXOAuth2Client *oauthClient;
+@property (nonatomic, readonly) BOOL connected;
+@property (nonatomic, retain) NSDictionary *paths;
+@property (nonatomic, retain) NSNumber *userID;
+
++ (RunKeeper *)sharedRunKeeper;
+
+- (void)handleOpenURL:(NSURL *)url;
+- (void)connect;
+- (void)postActivity:(RunKeeperActivityType)activity start:(NSDate*)start distance:(NSNumber*)distance
+ duration:(NSNumber*)duration calories:(NSNumber*)calories heartRate:(NSNumber*)heartRate
+ notes:(NSString*)notes path:(NSArray*)path
+ success:(RIBasicCompletionBlock)success failed:(RIBasicFailedBlock)failed;
+
+
+@end
276 Classes/RunKeeper.m
View
@@ -0,0 +1,276 @@
+//
+// RunKeeper.m
+// rrgps-iphone
+//
+// Created by Reid van Melle on 11-09-14.
+// Copyright 2011 Brierwood Design Co-operative. All rights reserved.
+//
+
+#import "RunKeeper.h"
+#import "SynthesizeSingleton.h"
+#import "ASIHTTPRequest.h"
+#import "ASIFormDataRequest.h"
+#import "GTMNSDictionary+URLArguments.h"
+#import "JSON.h"
+#import "NSObject+SBJSON.h"
+
+#define kRunKeeperClientID @"bb22d96326844785909a32225799bb16"
+#define kRunKeeperClientSecret @"7d5cd12808b44e98a69561be2bad69b2"
+#define kRunKeeperAuthorizationURL @"https://runkeeper.com/apps/authorize"
+#define kRunKeeperAccessTokenURL @"https://runkeeper.com/apps/token"
+
+#define kRunKeeperBasePath @"https://api.runkeeper.com"
+#define kRunKeeperBaseURL @"/user/"
+
+#define kRKBackgroundActivitiesKey @"background_activities"
+#define kRKDiabetesKey @"diabetes"
+#define kRKFitnessActivitiesKey @"fitness_activities"
+#define kRKGeneralMeasurementsKey @"general_measurements"
+#define kRKNutritionKey @"nutrition"
+#define kRKProfileKey @"profile"
+#define kRKRecordsKey @"records"
+#define kRKSettingsKey @"settings"
+#define kRKSleepKey @"sleep"
+#define kRKStrengthTrainingActivitiesKey @"strength_training_activities"
+#define kRKTeamKey @"team"
+#define kRKUserIDKey @"userID"
+#define kRKWeightKey @"weight"
+
+@implementation RunKeeper
+
+@synthesize oauthClient, connected, paths, userID;
+
+SYNTHESIZE_SINGLETON_FOR_CLASS(RunKeeper);
+
+- (void)connect
+{
+ [self.oauthClient requestAccess];
+}
+
+- (void)handleOpenURL:(NSURL *)url
+{
+ [self.oauthClient openRedirectURL:url];
+}
+
+- (ASIHTTPRequest*)createStandardRequest:(NSURL*)url
+{
+ ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
+ [request addRequestHeader:@"Authorization" value:[NSString stringWithFormat:@"Bearer %@", oauthClient.accessToken.accessToken]];
+ request.delegate = self;
+ return request;
+}
+
+- (ASIHTTPRequest*)createRequest:(NSString*)path params:(NSDictionary*)params {
+ NSString *str = [NSString stringWithFormat:@"%@%@", kRunKeeperBasePath, path];
+ if (params != nil) {
+ str = [str stringByAppendingFormat:@"?%@", [params gtm_httpArgumentsString]];
+ }
+ NSLog(@"request URL: %@ params=%@", str, params);
+ NSURL *url = [NSURL URLWithString:str];
+ return [self createStandardRequest:url];
+}
+
+- (ASIFormDataRequest*)createPostRequest:(NSString*)path content:(NSString*)content {
+ NSString *str = [NSString stringWithFormat:@"%@%@", kRunKeeperBasePath, path];
+ NSURL *url = [NSURL URLWithString:str];
+ ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
+ [request addRequestHeader:@"Authorization" value:[NSString stringWithFormat:@"Bearer %@", oauthClient.accessToken.accessToken]];
+ [request addRequestHeader:@"Content-Type" value:@"application/vnd.com.runkeeper.NewFitnessActivity+json"];
+ request.delegate = self;
+ //[request setPostBody:[content dataUsingEncoding:NSUTF8StringEncoding]];
+ NSData *data = [content dataUsingEncoding:NSUTF8StringEncoding];
+ [request appendPostData:data];
+ //[request setContentLength:[data length]];
+ return request;
+}
+
+
+- (ASIHTTPRequest*)request:(NSString*)path params:(NSDictionary*)params onCompletion:(RIJSONCompletionBlock)completion onFailed:(RIBasicFailedBlock)failed {
+ __block ASIHTTPRequest *request = [self createRequest:path params:params];
+
+ [request setCompletionBlock:^{
+ // Use when fetching text data
+ if ([request responseStatusCode] == 200) {
+ if (completion) {
+ completion([[request responseString] JSONValue]);
+ }
+ }
+ }];
+ [request setFailedBlock:^{
+ NSLog(@"*** request failed reason: %@", [request error]);
+ if (failed) failed();
+ }];
+ [request startAsynchronous];
+ return request;
+}
+
+- (ASIHTTPRequest*)postRequest:(NSString*)path content:(NSString*)content onCompletion:(RIJSONCompletionBlock)completion onFailed:(RIBasicFailedBlock)failed {
+ __block ASIFormDataRequest *request = [self createPostRequest:path content:content];
+
+ [request setCompletionBlock:^{
+ // Use when fetching text data
+ if ([request responseStatusCode] == 201) { // CREATED
+ if (completion) {
+ NSLog(@"Done: %@", [request responseString]);
+ completion(nil);
+ //completion([[request responseString] JSONValue]);
+ }
+ } else {
+ NSLog(@"postFailed: %d %@", [request responseStatusCode], [request responseString]);
+ if (failed) failed();
+ }
+ }];
+ [request setFailedBlock:^{
+ NSLog(@"*** request failed reason: %@", [request error]);
+ if (failed) failed();
+ }];
+ [request startAsynchronous];
+ return request;
+}
+
+
+- (void)getBasePaths
+{
+ [self request:kRunKeeperBaseURL params:nil onCompletion:^(id json) {
+ self.paths = json;
+ self.userID = [self.paths objectForKey:@"kRKUserIDKey"];
+ }onFailed:^{
+ self.paths = nil;
+ self.userID = nil;
+ connected = NO;
+ NSLog(@"fail: ");
+ }];
+}
+
+#pragma mark RunKeeperAPI Calls
+
+- (NSString*)activityString:(RunKeeperActivityType)activity
+{
+ switch (activity) {
+ case kRKRunning: return @"Running";
+ case kRKCycling: return @"Cycling";
+ case kRKMountainBiking: return @"Mountain Biking";
+ case kRKWalking: return @"Walking";
+ case kRKHiking: return @"Hiking";
+ case kRKDownhillSkiing: return @"Downhill Skiing";
+ case kRKXCountrySkiing: return @"Cross Country Skiing";
+ case kRKSnowboarding: return @"Snowboarding";
+ case kRKSkating: return @"Skating";
+ case kRKSwimming: return @"Swimming";
+ case kRKWheelchair: return @"Wheelchair";
+ case kRKRowing: return @"Rowing";
+ case kRKElliptical: return @"Elliptical";
+ case kRKOther: return @"Other";
+ }
+ return @"Running";
+}
+
+- (void)postActivity:(RunKeeperActivityType)activity start:(NSDate*)start distance:(NSNumber*)distance
+ duration:(NSNumber*)duration calories:(NSNumber*)calories heartRate:(NSNumber*)heartRate
+ notes:(NSString*)notes path:(NSArray*)path
+ success:(RIBasicCompletionBlock)success failed:(RIBasicFailedBlock)failed
+{
+ /*
+ {
+ "type": "Running",
+ "start_time": "Sat, 1 Jan 2011 00:00:00",
+ "notes": "My first late-night run", "path": [{"timestamp":0,
+ "altitude":0,
+ "longitude":-70.95182336425782,
+ "latitude":42.312620297384676,
+ "type":"start"},
+ {"timestamp":8,
+ "altitude":0,
+ "longitude":-70.95255292510987,
+ "latitude":42.31230294498018,
+ "type":"end"}]
+ "post_to_facebook": true,
+ "post_to_twitter": true
+ }*/
+ /**
+ [[RunKeeper sharedRunKeeper] postActivity:kRKRunning start:[NSDate date]
+ distance:[NSNumber numberWithFloat:10000]
+ duration:[NSNumber numberWithInt:3600]
+ calories:nil heartRate:nil notes:@"Good to go" path:nil];
+ */
+ [self connect];
+ NSDictionary *args = [NSDictionary dictionaryWithObjectsAndKeys:
+ [self activityString:activity], @"type",
+ start, @"start_time",
+ distance, @"total_distance",
+ duration, @"duration",
+ notes, @"notes",
+ path, @"path",
+ nil];
+ NSString *content = [args JSONRepresentation];
+ NSLog(@"content: %@", content);
+ [self postRequest:[self.paths objectForKey:kRKFitnessActivitiesKey] content:content onCompletion:^(id json) {
+ if (success) success();
+ }onFailed:^{
+ NSLog(@"fail: ");
+ if (failed) failed();
+ }];
+}
+
+
+#pragma mark NXOAuth2ClientDelegate
+
+- (void)oauthClientDidGetAccessToken:(NXOAuth2Client *)client
+{
+ NSLog(@"didGetAccessToken");
+ connected = YES;
+ UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:@"Connected"
+ message:@"Running Intensity is linked to your RunKeeper account"
+ delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil] autorelease];
+ [alert show];
+ [self getBasePaths];
+
+}
+- (void)oauthClientDidLoseAccessToken:(NXOAuth2Client *)client
+{
+ connected = NO;
+ NSLog(@"didLoseAccessToken");
+}
+- (void)oauthClient:(NXOAuth2Client *)client didFailToGetAccessTokenWithError:(NSError *)error
+{
+ connected = NO;
+ NSLog(@"didFailToGetAccessToken");
+ UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:@"Connection Failed"
+ message:@"The link to your RunKeeper account failed."
+ delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil] autorelease];
+ [alert show];
+}
+
+- (void)oauthClientNeedsAuthentication:(NXOAuth2Client *)client
+{
+ NSURL *authorizationURL = [client authorizationURLWithRedirectURL:[NSURL URLWithString:@"x-runningintensity://oauth2"]];
+ [[UIApplication sharedApplication] openURL:authorizationURL];
+}
+
+- (NXOAuth2Client*)oauthClient {
+ if (oauthClient != nil) {
+ return oauthClient;
+ }
+
+ oauthClient = [[NXOAuth2Client alloc] initWithClientID:kRunKeeperClientID
+ clientSecret:kRunKeeperClientSecret
+ authorizeURL:[NSURL URLWithString:kRunKeeperAuthorizationURL]
+ tokenURL:[NSURL URLWithString:kRunKeeperAccessTokenURL]
+ delegate:self];
+ //NSLog(@"requestAccess: %@", oauthClient.accessToken.accessToken);
+ return oauthClient;
+}
+
+#pragma mark -
+#pragma mark Memory management
+
+- (void)dealloc {
+ [oauthClient release];
+ [paths release];
+ [userID release];
+ [super dealloc];
+}
+
+
+
+@end
33 README.md
View
@@ -1,20 +1,19 @@
-# BRBitly
+# RunKeeper-iOS
-BRBitly provides an Objective C wrapper class for accessing the free URL shortening services at [bit.ly](http://www.bitly.com) from iOS 4.0 or newer.
+RunKeeper-iOS provides an Objective C wrapper class for accessing the [RunKeeper Health Graph API](http://developer.runkeeper.com/healthgraph) from iOS 4.0 or newer.
-# Disclosure
-
-BRBitly was rather brazenly copied and adapted from [ILBitly](https://github.com/InfiniteLoopDK/ILBitly.git). I wanted to use ILBitly directly, but the existing project was already built around ASI and SBJson rather than AFNetwork and JSONkit, so I adapted it to my needs.
+RunKeeper-iOS was developed for use in our iPhone fitness app "Running Intensity". It is meant to be general, but is built primarily for a Running app.
## Dependencies
- [ASI HTTP Request](https://github.com/pokeb/asi-http-request) - Used for the underlying network access
- [SBJson](https://github.com/stig/json-framework.git) - Needed for parsing the response from bit.ly
-- You will also need an account at bit.ly including an [API key](http://bitly.com/a/your_api_key)
+- [OAuth2Client](https://github.com/nxtbgthng/OAuth2Client) - Used for OAuth2 access to RunKeeper API
+- You will also need to register for a RunKeeper account, create an app, and get your tokens
## Example Usage
-###Shortening an URL
+###Posting a Run
BRBitly *bitly = [[BRBitly alloc] initWithLogin:login apiKey:apiKey];
[bitly shorten:@"http://www.infinite-loop.dk" result:^(NSString *shortURLString) {
NSLog(@"The shortened URL: %@", shortURLString);
@@ -23,28 +22,12 @@ BRBitly was rather brazenly copied and adapted from [ILBitly](https://github.com
}];
[bitly release];
-###Expanding an URL
- [bitly expand:@"http://j.mp/its-your-round" result:^(NSString *longURLString) {
- NSLog(@"The expanded URL: %@", longURLString);
- } error:^(NSError *err) {
- NSLog(@"An error occurred %@", err);
- }];
-
-###Getting statistics on number of clicks
- [bitly clicks:@"http://j.mp/qnpNBs" result:^(NSInteger userClicks, NSInteger globalClicks) {
- NSLog(@"This link has been clicked %d times out of %d clicks globally: %d", userClicks, globalClicks);
- } error:^(NSError *err) {
- NSLog(@"An error occurred %@", err);
- }];
-
See more examples in the attached sample project.
-## Building Xcode Documentation
+## Getting Started
-BRBitly is documented in the header files using the appledoc syntax. The sample app contains a target called "Documentation" which will build the documentation and install it for use inside Xcode as a searchable and browsable docset.
-In order to be able to build it you will need to install appledoc on your own computer. You can get appledoc from [GitHub](https://github.com/tomaz/appledoc).
-For more information about how to setup and build the documentation you can read this [short tutorial](http://wp.me/p1xKtH-52).
+Check out the sample app to see a very simple integration.
Feel free to add enhanchements, bug fixes, changes and provide them back to the community!
BIN  images/connect-blue-black-300x57.png
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
749 runkeepersample/runkeepersample.xcodeproj/project.pbxproj
View
@@ -0,0 +1,749 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 46;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ 63C1FBB41424230F0074CF99 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FBB31424230F0074CF99 /* UIKit.framework */; };
+ 63C1FBB61424230F0074CF99 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FBB51424230F0074CF99 /* Foundation.framework */; };
+ 63C1FBB81424230F0074CF99 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FBB71424230F0074CF99 /* CoreGraphics.framework */; };
+ 63C1FBBE1424230F0074CF99 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 63C1FBBC1424230F0074CF99 /* InfoPlist.strings */; };
+ 63C1FBC11424230F0074CF99 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FBC01424230F0074CF99 /* main.m */; };
+ 63C1FBC41424230F0074CF99 /* runkeepersampleAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FBC31424230F0074CF99 /* runkeepersampleAppDelegate.m */; };
+ 63C1FBC71424230F0074CF99 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 63C1FBC51424230F0074CF99 /* MainWindow.xib */; };
+ 63C1FBCA1424230F0074CF99 /* RootViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FBC91424230F0074CF99 /* RootViewController.m */; };
+ 63C1FBCD1424230F0074CF99 /* RootViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 63C1FBCB1424230F0074CF99 /* RootViewController.xib */; };
+ 63C1FBD41424230F0074CF99 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FBB31424230F0074CF99 /* UIKit.framework */; };
+ 63C1FBD51424230F0074CF99 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FBB51424230F0074CF99 /* Foundation.framework */; };
+ 63C1FBD61424230F0074CF99 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FBB71424230F0074CF99 /* CoreGraphics.framework */; };
+ 63C1FBDE1424230F0074CF99 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 63C1FBDC1424230F0074CF99 /* InfoPlist.strings */; };
+ 63C1FBE11424230F0074CF99 /* runkeepersampleTests.h in Resources */ = {isa = PBXBuildFile; fileRef = 63C1FBE01424230F0074CF99 /* runkeepersampleTests.h */; };
+ 63C1FBE31424230F0074CF99 /* runkeepersampleTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FBE21424230F0074CF99 /* runkeepersampleTests.m */; };
+ 63C1FBEE142423E40074CF99 /* PositionTracker.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FBEC142423E40074CF99 /* PositionTracker.m */; };
+ 63C1FBF1142424CF0074CF99 /* connect-blue-black-300x57.png in Resources */ = {isa = PBXBuildFile; fileRef = 63C1FBF0142424CF0074CF99 /* connect-blue-black-300x57.png */; };
+ 63C1FC3C1424261C0074CF99 /* NSObject+SBJson.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FBF41424261B0074CF99 /* NSObject+SBJson.m */; };
+ 63C1FC3D1424261C0074CF99 /* SBJsonParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FBF71424261B0074CF99 /* SBJsonParser.m */; };
+ 63C1FC3E1424261C0074CF99 /* SBJsonStreamParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FBF91424261B0074CF99 /* SBJsonStreamParser.m */; };
+ 63C1FC3F1424261C0074CF99 /* SBJsonStreamParserAccumulator.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FBFB1424261B0074CF99 /* SBJsonStreamParserAccumulator.m */; };
+ 63C1FC401424261C0074CF99 /* SBJsonStreamParserAdapter.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FBFD1424261B0074CF99 /* SBJsonStreamParserAdapter.m */; };
+ 63C1FC411424261C0074CF99 /* SBJsonStreamParserState.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FBFF1424261B0074CF99 /* SBJsonStreamParserState.m */; };
+ 63C1FC421424261C0074CF99 /* SBJsonStreamWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC011424261B0074CF99 /* SBJsonStreamWriter.m */; };
+ 63C1FC431424261C0074CF99 /* SBJsonStreamWriterAccumulator.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC031424261B0074CF99 /* SBJsonStreamWriterAccumulator.m */; };
+ 63C1FC441424261C0074CF99 /* SBJsonStreamWriterState.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC051424261B0074CF99 /* SBJsonStreamWriterState.m */; };
+ 63C1FC451424261C0074CF99 /* SBJsonTokeniser.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC071424261B0074CF99 /* SBJsonTokeniser.m */; };
+ 63C1FC461424261C0074CF99 /* SBJsonUTF8Stream.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC091424261B0074CF99 /* SBJsonUTF8Stream.m */; };
+ 63C1FC471424261C0074CF99 /* SBJsonWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC0B1424261B0074CF99 /* SBJsonWriter.m */; };
+ 63C1FC481424261C0074CF99 /* ASIAuthenticationDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC0E1424261B0074CF99 /* ASIAuthenticationDialog.m */; };
+ 63C1FC491424261C0074CF99 /* ASIDataCompressor.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC111424261B0074CF99 /* ASIDataCompressor.m */; };
+ 63C1FC4A1424261C0074CF99 /* ASIDataDecompressor.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC131424261B0074CF99 /* ASIDataDecompressor.m */; };
+ 63C1FC4B1424261C0074CF99 /* ASIDownloadCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC151424261B0074CF99 /* ASIDownloadCache.m */; };
+ 63C1FC4C1424261C0074CF99 /* ASIFormDataRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC171424261B0074CF99 /* ASIFormDataRequest.m */; };
+ 63C1FC4D1424261C0074CF99 /* ASIHTTPRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC191424261B0074CF99 /* ASIHTTPRequest.m */; };
+ 63C1FC4E1424261C0074CF99 /* ASIInputStream.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC1D1424261B0074CF99 /* ASIInputStream.m */; };
+ 63C1FC4F1424261C0074CF99 /* ASINetworkQueue.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC1F1424261B0074CF99 /* ASINetworkQueue.m */; };
+ 63C1FC501424261C0074CF99 /* NSData+NXOAuth2.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC231424261C0074CF99 /* NSData+NXOAuth2.m */; };
+ 63C1FC511424261C0074CF99 /* NSString+NXOAuth2.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC251424261C0074CF99 /* NSString+NXOAuth2.m */; };
+ 63C1FC521424261C0074CF99 /* NSURL+NXOAuth2.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC271424261C0074CF99 /* NSURL+NXOAuth2.m */; };
+ 63C1FC531424261C0074CF99 /* NXOAuth2AccessToken.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC2B1424261C0074CF99 /* NXOAuth2AccessToken.m */; };
+ 63C1FC541424261C0074CF99 /* NXOAuth2Client.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC2D1424261C0074CF99 /* NXOAuth2Client.m */; };
+ 63C1FC551424261C0074CF99 /* NXOAuth2Connection.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC301424261C0074CF99 /* NXOAuth2Connection.m */; };
+ 63C1FC561424261C0074CF99 /* NXOAuth2Constants.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC331424261C0074CF99 /* NXOAuth2Constants.m */; };
+ 63C1FC571424261C0074CF99 /* NXOAuth2FileStreamWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC351424261C0074CF99 /* NXOAuth2FileStreamWrapper.m */; };
+ 63C1FC581424261C0074CF99 /* NXOAuth2PostBodyPart.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC371424261C0074CF99 /* NXOAuth2PostBodyPart.m */; };
+ 63C1FC591424261C0074CF99 /* NXOAuth2PostBodyStream.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC391424261C0074CF99 /* NXOAuth2PostBodyStream.m */; };
+ 63C1FC5D142426750074CF99 /* Reachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 63C1FC5B142426750074CF99 /* Reachability.m */; };
+ 63C1FC60142426A20074CF99 /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FC5E142426A20074CF99 /* CoreLocation.framework */; };
+ 63C1FC61142426A20074CF99 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FC5F142426A20074CF99 /* SystemConfiguration.framework */; };
+ 63C1FC63142426BE0074CF99 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FC62142426BE0074CF99 /* CFNetwork.framework */; };
+ 63C1FC65142426D10074CF99 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FC64142426D10074CF99 /* Security.framework */; };
+ 63C1FC67142426DC0074CF99 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FC66142426DC0074CF99 /* libz.dylib */; };
+ 63C1FC69142426EB0074CF99 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 63C1FC68142426EB0074CF99 /* MobileCoreServices.framework */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXContainerItemProxy section */
+ 63C1FBD71424230F0074CF99 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 63C1FBA61424230F0074CF99 /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 63C1FBAE1424230F0074CF99;
+ remoteInfo = runkeepersample;
+ };
+/* End PBXContainerItemProxy section */
+
+/* Begin PBXFileReference section */
+ 63C1FBAF1424230F0074CF99 /* runkeepersample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = runkeepersample.app; sourceTree = BUILT_PRODUCTS_DIR; };
+ 63C1FBB31424230F0074CF99 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
+ 63C1FBB51424230F0074CF99 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
+ 63C1FBB71424230F0074CF99 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
+ 63C1FBBB1424230F0074CF99 /* runkeepersample-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "runkeepersample-Info.plist"; sourceTree = "<group>"; };
+ 63C1FBBD1424230F0074CF99 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+ 63C1FBBF1424230F0074CF99 /* runkeepersample-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "runkeepersample-Prefix.pch"; sourceTree = "<group>"; };
+ 63C1FBC01424230F0074CF99 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
+ 63C1FBC21424230F0074CF99 /* runkeepersampleAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = runkeepersampleAppDelegate.h; sourceTree = "<group>"; };
+ 63C1FBC31424230F0074CF99 /* runkeepersampleAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = runkeepersampleAppDelegate.m; sourceTree = "<group>"; };
+ 63C1FBC61424230F0074CF99 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainWindow.xib; sourceTree = "<group>"; };
+ 63C1FBC81424230F0074CF99 /* RootViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RootViewController.h; sourceTree = "<group>"; };
+ 63C1FBC91424230F0074CF99 /* RootViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RootViewController.m; sourceTree = "<group>"; };
+ 63C1FBCC1424230F0074CF99 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/RootViewController.xib; sourceTree = "<group>"; };
+ 63C1FBD31424230F0074CF99 /* runkeepersampleTests.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = runkeepersampleTests.octest; sourceTree = BUILT_PRODUCTS_DIR; };
+ 63C1FBDB1424230F0074CF99 /* runkeepersampleTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "runkeepersampleTests-Info.plist"; sourceTree = "<group>"; };
+ 63C1FBDD1424230F0074CF99 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+ 63C1FBDF1424230F0074CF99 /* runkeepersampleTests-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "runkeepersampleTests-Prefix.pch"; sourceTree = "<group>"; };
+ 63C1FBE01424230F0074CF99 /* runkeepersampleTests.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = runkeepersampleTests.h; sourceTree = "<group>"; };
+ 63C1FBE21424230F0074CF99 /* runkeepersampleTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = runkeepersampleTests.m; sourceTree = "<group>"; };
+ 63C1FBEC142423E40074CF99 /* PositionTracker.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PositionTracker.m; sourceTree = "<group>"; };
+ 63C1FBED142423E40074CF99 /* PositionTracker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PositionTracker.h; sourceTree = "<group>"; };
+ 63C1FBF0142424CF0074CF99 /* connect-blue-black-300x57.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "connect-blue-black-300x57.png"; sourceTree = "<group>"; };
+ 63C1FBF31424261B0074CF99 /* NSObject+SBJson.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject+SBJson.h"; sourceTree = "<group>"; };
+ 63C1FBF41424261B0074CF99 /* NSObject+SBJson.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSObject+SBJson.m"; sourceTree = "<group>"; };
+ 63C1FBF51424261B0074CF99 /* SBJson.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJson.h; sourceTree = "<group>"; };
+ 63C1FBF61424261B0074CF99 /* SBJsonParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJsonParser.h; sourceTree = "<group>"; };
+ 63C1FBF71424261B0074CF99 /* SBJsonParser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SBJsonParser.m; sourceTree = "<group>"; };
+ 63C1FBF81424261B0074CF99 /* SBJsonStreamParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJsonStreamParser.h; sourceTree = "<group>"; };
+ 63C1FBF91424261B0074CF99 /* SBJsonStreamParser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SBJsonStreamParser.m; sourceTree = "<group>"; };
+ 63C1FBFA1424261B0074CF99 /* SBJsonStreamParserAccumulator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJsonStreamParserAccumulator.h; sourceTree = "<group>"; };
+ 63C1FBFB1424261B0074CF99 /* SBJsonStreamParserAccumulator.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SBJsonStreamParserAccumulator.m; sourceTree = "<group>"; };
+ 63C1FBFC1424261B0074CF99 /* SBJsonStreamParserAdapter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJsonStreamParserAdapter.h; sourceTree = "<group>"; };
+ 63C1FBFD1424261B0074CF99 /* SBJsonStreamParserAdapter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SBJsonStreamParserAdapter.m; sourceTree = "<group>"; };
+ 63C1FBFE1424261B0074CF99 /* SBJsonStreamParserState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJsonStreamParserState.h; sourceTree = "<group>"; };
+ 63C1FBFF1424261B0074CF99 /* SBJsonStreamParserState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SBJsonStreamParserState.m; sourceTree = "<group>"; };
+ 63C1FC001424261B0074CF99 /* SBJsonStreamWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJsonStreamWriter.h; sourceTree = "<group>"; };
+ 63C1FC011424261B0074CF99 /* SBJsonStreamWriter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SBJsonStreamWriter.m; sourceTree = "<group>"; };
+ 63C1FC021424261B0074CF99 /* SBJsonStreamWriterAccumulator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJsonStreamWriterAccumulator.h; sourceTree = "<group>"; };
+ 63C1FC031424261B0074CF99 /* SBJsonStreamWriterAccumulator.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SBJsonStreamWriterAccumulator.m; sourceTree = "<group>"; };
+ 63C1FC041424261B0074CF99 /* SBJsonStreamWriterState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJsonStreamWriterState.h; sourceTree = "<group>"; };
+ 63C1FC051424261B0074CF99 /* SBJsonStreamWriterState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SBJsonStreamWriterState.m; sourceTree = "<group>"; };
+ 63C1FC061424261B0074CF99 /* SBJsonTokeniser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJsonTokeniser.h; sourceTree = "<group>"; };
+ 63C1FC071424261B0074CF99 /* SBJsonTokeniser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SBJsonTokeniser.m; sourceTree = "<group>"; };
+ 63C1FC081424261B0074CF99 /* SBJsonUTF8Stream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJsonUTF8Stream.h; sourceTree = "<group>"; };
+ 63C1FC091424261B0074CF99 /* SBJsonUTF8Stream.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SBJsonUTF8Stream.m; sourceTree = "<group>"; };
+ 63C1FC0A1424261B0074CF99 /* SBJsonWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SBJsonWriter.h; sourceTree = "<group>"; };
+ 63C1FC0B1424261B0074CF99 /* SBJsonWriter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SBJsonWriter.m; sourceTree = "<group>"; };
+ 63C1FC0D1424261B0074CF99 /* ASIAuthenticationDialog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASIAuthenticationDialog.h; sourceTree = "<group>"; };
+ 63C1FC0E1424261B0074CF99 /* ASIAuthenticationDialog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ASIAuthenticationDialog.m; sourceTree = "<group>"; };
+ 63C1FC0F1424261B0074CF99 /* ASICacheDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASICacheDelegate.h; sourceTree = "<group>"; };
+ 63C1FC101424261B0074CF99 /* ASIDataCompressor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASIDataCompressor.h; sourceTree = "<group>"; };
+ 63C1FC111424261B0074CF99 /* ASIDataCompressor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ASIDataCompressor.m; sourceTree = "<group>"; };
+ 63C1FC121424261B0074CF99 /* ASIDataDecompressor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASIDataDecompressor.h; sourceTree = "<group>"; };
+ 63C1FC131424261B0074CF99 /* ASIDataDecompressor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ASIDataDecompressor.m; sourceTree = "<group>"; };
+ 63C1FC141424261B0074CF99 /* ASIDownloadCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASIDownloadCache.h; sourceTree = "<group>"; };
+ 63C1FC151424261B0074CF99 /* ASIDownloadCache.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ASIDownloadCache.m; sourceTree = "<group>"; };
+ 63C1FC161424261B0074CF99 /* ASIFormDataRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASIFormDataRequest.h; sourceTree = "<group>"; };
+ 63C1FC171424261B0074CF99 /* ASIFormDataRequest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ASIFormDataRequest.m; sourceTree = "<group>"; };
+ 63C1FC181424261B0074CF99 /* ASIHTTPRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASIHTTPRequest.h; sourceTree = "<group>"; };
+ 63C1FC191424261B0074CF99 /* ASIHTTPRequest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ASIHTTPRequest.m; sourceTree = "<group>"; };
+ 63C1FC1A1424261B0074CF99 /* ASIHTTPRequestConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASIHTTPRequestConfig.h; sourceTree = "<group>"; };
+ 63C1FC1B1424261B0074CF99 /* ASIHTTPRequestDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASIHTTPRequestDelegate.h; sourceTree = "<group>"; };
+ 63C1FC1C1424261B0074CF99 /* ASIInputStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASIInputStream.h; sourceTree = "<group>"; };
+ 63C1FC1D1424261B0074CF99 /* ASIInputStream.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ASIInputStream.m; sourceTree = "<group>"; };
+ 63C1FC1E1424261B0074CF99 /* ASINetworkQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASINetworkQueue.h; sourceTree = "<group>"; };
+ 63C1FC1F1424261B0074CF99 /* ASINetworkQueue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ASINetworkQueue.m; sourceTree = "<group>"; };
+ 63C1FC201424261B0074CF99 /* ASIProgressDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASIProgressDelegate.h; sourceTree = "<group>"; };
+ 63C1FC221424261C0074CF99 /* NSData+NXOAuth2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+NXOAuth2.h"; sourceTree = "<group>"; };
+ 63C1FC231424261C0074CF99 /* NSData+NXOAuth2.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+NXOAuth2.m"; sourceTree = "<group>"; };
+ 63C1FC241424261C0074CF99 /* NSString+NXOAuth2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+NXOAuth2.h"; sourceTree = "<group>"; };
+ 63C1FC251424261C0074CF99 /* NSString+NXOAuth2.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+NXOAuth2.m"; sourceTree = "<group>"; };
+ 63C1FC261424261C0074CF99 /* NSURL+NXOAuth2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURL+NXOAuth2.h"; sourceTree = "<group>"; };
+ 63C1FC271424261C0074CF99 /* NSURL+NXOAuth2.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSURL+NXOAuth2.m"; sourceTree = "<group>"; };
+ 63C1FC291424261C0074CF99 /* NXOAuth2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NXOAuth2.h; sourceTree = "<group>"; };
+ 63C1FC2A1424261C0074CF99 /* NXOAuth2AccessToken.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NXOAuth2AccessToken.h; sourceTree = "<group>"; };
+ 63C1FC2B1424261C0074CF99 /* NXOAuth2AccessToken.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NXOAuth2AccessToken.m; sourceTree = "<group>"; };
+ 63C1FC2C1424261C0074CF99 /* NXOAuth2Client.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NXOAuth2Client.h; sourceTree = "<group>"; };
+ 63C1FC2D1424261C0074CF99 /* NXOAuth2Client.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NXOAuth2Client.m; sourceTree = "<group>"; };
+ 63C1FC2E1424261C0074CF99 /* NXOAuth2ClientDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NXOAuth2ClientDelegate.h; sourceTree = "<group>"; };
+ 63C1FC2F1424261C0074CF99 /* NXOAuth2Connection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NXOAuth2Connection.h; sourceTree = "<group>"; };
+ 63C1FC301424261C0074CF99 /* NXOAuth2Connection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NXOAuth2Connection.m; sourceTree = "<group>"; };
+ 63C1FC311424261C0074CF99 /* NXOAuth2ConnectionDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NXOAuth2ConnectionDelegate.h; sourceTree = "<group>"; };
+ 63C1FC321424261C0074CF99 /* NXOAuth2Constants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NXOAuth2Constants.h; sourceTree = "<group>"; };
+ 63C1FC331424261C0074CF99 /* NXOAuth2Constants.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NXOAuth2Constants.m; sourceTree = "<group>"; };
+ 63C1FC341424261C0074CF99 /* NXOAuth2FileStreamWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NXOAuth2FileStreamWrapper.h; sourceTree = "<group>"; };
+ 63C1FC351424261C0074CF99 /* NXOAuth2FileStreamWrapper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NXOAuth2FileStreamWrapper.m; sourceTree = "<group>"; };
+ 63C1FC361424261C0074CF99 /* NXOAuth2PostBodyPart.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NXOAuth2PostBodyPart.h; sourceTree = "<group>"; };
+ 63C1FC371424261C0074CF99 /* NXOAuth2PostBodyPart.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NXOAuth2PostBodyPart.m; sourceTree = "<group>"; };
+ 63C1FC381424261C0074CF99 /* NXOAuth2PostBodyStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NXOAuth2PostBodyStream.h; sourceTree = "<group>"; };
+ 63C1FC391424261C0074CF99 /* NXOAuth2PostBodyStream.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NXOAuth2PostBodyStream.m; sourceTree = "<group>"; };
+ 63C1FC3A1424261C0074CF99 /* NXOAuth2TrustDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NXOAuth2TrustDelegate.h; sourceTree = "<group>"; };
+ 63C1FC3B1424261C0074CF99 /* OAuth2Client_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OAuth2Client_Prefix.pch; sourceTree = "<group>"; };
+ 63C1FC5B142426750074CF99 /* Reachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Reachability.m; path = ../../vendor/Reachability.m; sourceTree = "<group>"; };
+ 63C1FC5C142426750074CF99 /* Reachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Reachability.h; path = ../../vendor/Reachability.h; sourceTree = "<group>"; };
+ 63C1FC5E142426A20074CF99 /* CoreLocation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreLocation.framework; path = System/Library/Frameworks/CoreLocation.framework; sourceTree = SDKROOT; };
+ 63C1FC5F142426A20074CF99 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; };
+ 63C1FC62142426BE0074CF99 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; };
+ 63C1FC64142426D10074CF99 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; };
+ 63C1FC66142426DC0074CF99 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; };
+ 63C1FC68142426EB0074CF99 /* MobileCoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileCoreServices.framework; path = System/Library/Frameworks/MobileCoreServices.framework; sourceTree = SDKROOT; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ 63C1FBAC1424230F0074CF99 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 63C1FC69142426EB0074CF99 /* MobileCoreServices.framework in Frameworks */,
+ 63C1FC67142426DC0074CF99 /* libz.dylib in Frameworks */,
+ 63C1FC65142426D10074CF99 /* Security.framework in Frameworks */,
+ 63C1FC63142426BE0074CF99 /* CFNetwork.framework in Frameworks */,
+ 63C1FC60142426A20074CF99 /* CoreLocation.framework in Frameworks */,
+ 63C1FC61142426A20074CF99 /* SystemConfiguration.framework in Frameworks */,
+ 63C1FBB41424230F0074CF99 /* UIKit.framework in Frameworks */,
+ 63C1FBB61424230F0074CF99 /* Foundation.framework in Frameworks */,
+ 63C1FBB81424230F0074CF99 /* CoreGraphics.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 63C1FBCF1424230F0074CF99 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 63C1FBD41424230F0074CF99 /* UIKit.framework in Frameworks */,
+ 63C1FBD51424230F0074CF99 /* Foundation.framework in Frameworks */,
+ 63C1FBD61424230F0074CF99 /* CoreGraphics.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ 63C1FBA41424230F0074CF99 = {
+ isa = PBXGroup;
+ children = (
+ 63C1FC68142426EB0074CF99 /* MobileCoreServices.framework */,
+ 63C1FC66142426DC0074CF99 /* libz.dylib */,
+ 63C1FC64142426D10074CF99 /* Security.framework */,
+ 63C1FC62142426BE0074CF99 /* CFNetwork.framework */,
+ 63C1FC5E142426A20074CF99 /* CoreLocation.framework */,
+ 63C1FC5F142426A20074CF99 /* SystemConfiguration.framework */,
+ 63C1FBB91424230F0074CF99 /* runkeepersample */,
+ 63C1FBD91424230F0074CF99 /* runkeepersampleTests */,
+ 63C1FBB21424230F0074CF99 /* Frameworks */,
+ 63C1FBB01424230F0074CF99 /* Products */,
+ );
+ sourceTree = "<group>";
+ };
+ 63C1FBB01424230F0074CF99 /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FBAF1424230F0074CF99 /* runkeepersample.app */,
+ 63C1FBD31424230F0074CF99 /* runkeepersampleTests.octest */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ 63C1FBB21424230F0074CF99 /* Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FBB31424230F0074CF99 /* UIKit.framework */,
+ 63C1FBB51424230F0074CF99 /* Foundation.framework */,
+ 63C1FBB71424230F0074CF99 /* CoreGraphics.framework */,
+ );
+ name = Frameworks;
+ sourceTree = "<group>";
+ };
+ 63C1FBB91424230F0074CF99 /* runkeepersample */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FC5A1424266B0074CF99 /* Util */,
+ 63C1FBF21424261B0074CF99 /* SBJson */,
+ 63C1FC0C1424261B0074CF99 /* ASI */,
+ 63C1FC211424261B0074CF99 /* OAuth2Client */,
+ 63C1FBEF142424BE0074CF99 /* Resources */,
+ 63C1FBEC142423E40074CF99 /* PositionTracker.m */,
+ 63C1FBED142423E40074CF99 /* PositionTracker.h */,
+ 63C1FBC21424230F0074CF99 /* runkeepersampleAppDelegate.h */,
+ 63C1FBC31424230F0074CF99 /* runkeepersampleAppDelegate.m */,
+ 63C1FBC51424230F0074CF99 /* MainWindow.xib */,
+ 63C1FBC81424230F0074CF99 /* RootViewController.h */,
+ 63C1FBC91424230F0074CF99 /* RootViewController.m */,
+ 63C1FBCB1424230F0074CF99 /* RootViewController.xib */,
+ 63C1FBBA1424230F0074CF99 /* Supporting Files */,
+ );
+ path = runkeepersample;
+ sourceTree = "<group>";
+ };
+ 63C1FBBA1424230F0074CF99 /* Supporting Files */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FBBB1424230F0074CF99 /* runkeepersample-Info.plist */,
+ 63C1FBBC1424230F0074CF99 /* InfoPlist.strings */,
+ 63C1FBBF1424230F0074CF99 /* runkeepersample-Prefix.pch */,
+ 63C1FBC01424230F0074CF99 /* main.m */,
+ );
+ name = "Supporting Files";
+ sourceTree = "<group>";
+ };
+ 63C1FBD91424230F0074CF99 /* runkeepersampleTests */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FBE01424230F0074CF99 /* runkeepersampleTests.h */,
+ 63C1FBE21424230F0074CF99 /* runkeepersampleTests.m */,
+ 63C1FBDA1424230F0074CF99 /* Supporting Files */,
+ );
+ path = runkeepersampleTests;
+ sourceTree = "<group>";
+ };
+ 63C1FBDA1424230F0074CF99 /* Supporting Files */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FBDB1424230F0074CF99 /* runkeepersampleTests-Info.plist */,
+ 63C1FBDC1424230F0074CF99 /* InfoPlist.strings */,
+ 63C1FBDF1424230F0074CF99 /* runkeepersampleTests-Prefix.pch */,
+ );
+ name = "Supporting Files";
+ sourceTree = "<group>";
+ };
+ 63C1FBEF142424BE0074CF99 /* Resources */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FBF0142424CF0074CF99 /* connect-blue-black-300x57.png */,
+ );
+ name = Resources;
+ sourceTree = "<group>";
+ };
+ 63C1FBF21424261B0074CF99 /* SBJson */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FBF31424261B0074CF99 /* NSObject+SBJson.h */,
+ 63C1FBF41424261B0074CF99 /* NSObject+SBJson.m */,
+ 63C1FBF51424261B0074CF99 /* SBJson.h */,
+ 63C1FBF61424261B0074CF99 /* SBJsonParser.h */,
+ 63C1FBF71424261B0074CF99 /* SBJsonParser.m */,
+ 63C1FBF81424261B0074CF99 /* SBJsonStreamParser.h */,
+ 63C1FBF91424261B0074CF99 /* SBJsonStreamParser.m */,
+ 63C1FBFA1424261B0074CF99 /* SBJsonStreamParserAccumulator.h */,
+ 63C1FBFB1424261B0074CF99 /* SBJsonStreamParserAccumulator.m */,
+ 63C1FBFC1424261B0074CF99 /* SBJsonStreamParserAdapter.h */,
+ 63C1FBFD1424261B0074CF99 /* SBJsonStreamParserAdapter.m */,
+ 63C1FBFE1424261B0074CF99 /* SBJsonStreamParserState.h */,
+ 63C1FBFF1424261B0074CF99 /* SBJsonStreamParserState.m */,
+ 63C1FC001424261B0074CF99 /* SBJsonStreamWriter.h */,
+ 63C1FC011424261B0074CF99 /* SBJsonStreamWriter.m */,
+ 63C1FC021424261B0074CF99 /* SBJsonStreamWriterAccumulator.h */,
+ 63C1FC031424261B0074CF99 /* SBJsonStreamWriterAccumulator.m */,
+ 63C1FC041424261B0074CF99 /* SBJsonStreamWriterState.h */,
+ 63C1FC051424261B0074CF99 /* SBJsonStreamWriterState.m */,
+ 63C1FC061424261B0074CF99 /* SBJsonTokeniser.h */,
+ 63C1FC071424261B0074CF99 /* SBJsonTokeniser.m */,
+ 63C1FC081424261B0074CF99 /* SBJsonUTF8Stream.h */,
+ 63C1FC091424261B0074CF99 /* SBJsonUTF8Stream.m */,
+ 63C1FC0A1424261B0074CF99 /* SBJsonWriter.h */,
+ 63C1FC0B1424261B0074CF99 /* SBJsonWriter.m */,
+ );
+ name = SBJson;
+ path = ../../vendor/SBJson;
+ sourceTree = "<group>";
+ };
+ 63C1FC0C1424261B0074CF99 /* ASI */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FC0D1424261B0074CF99 /* ASIAuthenticationDialog.h */,
+ 63C1FC0E1424261B0074CF99 /* ASIAuthenticationDialog.m */,
+ 63C1FC0F1424261B0074CF99 /* ASICacheDelegate.h */,
+ 63C1FC101424261B0074CF99 /* ASIDataCompressor.h */,
+ 63C1FC111424261B0074CF99 /* ASIDataCompressor.m */,
+ 63C1FC121424261B0074CF99 /* ASIDataDecompressor.h */,
+ 63C1FC131424261B0074CF99 /* ASIDataDecompressor.m */,
+ 63C1FC141424261B0074CF99 /* ASIDownloadCache.h */,
+ 63C1FC151424261B0074CF99 /* ASIDownloadCache.m */,
+ 63C1FC161424261B0074CF99 /* ASIFormDataRequest.h */,
+ 63C1FC171424261B0074CF99 /* ASIFormDataRequest.m */,
+ 63C1FC181424261B0074CF99 /* ASIHTTPRequest.h */,
+ 63C1FC191424261B0074CF99 /* ASIHTTPRequest.m */,
+ 63C1FC1A1424261B0074CF99 /* ASIHTTPRequestConfig.h */,
+ 63C1FC1B1424261B0074CF99 /* ASIHTTPRequestDelegate.h */,
+ 63C1FC1C1424261B0074CF99 /* ASIInputStream.h */,
+ 63C1FC1D1424261B0074CF99 /* ASIInputStream.m */,
+ 63C1FC1E1424261B0074CF99 /* ASINetworkQueue.h */,
+ 63C1FC1F1424261B0074CF99 /* ASINetworkQueue.m */,
+ 63C1FC201424261B0074CF99 /* ASIProgressDelegate.h */,
+ );
+ name = ASI;
+ path = ../../vendor/ASI;
+ sourceTree = "<group>";
+ };
+ 63C1FC211424261B0074CF99 /* OAuth2Client */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FC221424261C0074CF99 /* NSData+NXOAuth2.h */,
+ 63C1FC231424261C0074CF99 /* NSData+NXOAuth2.m */,
+ 63C1FC241424261C0074CF99 /* NSString+NXOAuth2.h */,
+ 63C1FC251424261C0074CF99 /* NSString+NXOAuth2.m */,
+ 63C1FC261424261C0074CF99 /* NSURL+NXOAuth2.h */,
+ 63C1FC271424261C0074CF99 /* NSURL+NXOAuth2.m */,
+ 63C1FC281424261C0074CF99 /* OAuth2Client */,
+ 63C1FC3B1424261C0074CF99 /* OAuth2Client_Prefix.pch */,
+ );
+ name = OAuth2Client;
+ path = ../../vendor/OAuth2Client;
+ sourceTree = "<group>";
+ };
+ 63C1FC281424261C0074CF99 /* OAuth2Client */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FC291424261C0074CF99 /* NXOAuth2.h */,
+ 63C1FC2A1424261C0074CF99 /* NXOAuth2AccessToken.h */,
+ 63C1FC2B1424261C0074CF99 /* NXOAuth2AccessToken.m */,
+ 63C1FC2C1424261C0074CF99 /* NXOAuth2Client.h */,
+ 63C1FC2D1424261C0074CF99 /* NXOAuth2Client.m */,
+ 63C1FC2E1424261C0074CF99 /* NXOAuth2ClientDelegate.h */,
+ 63C1FC2F1424261C0074CF99 /* NXOAuth2Connection.h */,
+ 63C1FC301424261C0074CF99 /* NXOAuth2Connection.m */,
+ 63C1FC311424261C0074CF99 /* NXOAuth2ConnectionDelegate.h */,
+ 63C1FC321424261C0074CF99 /* NXOAuth2Constants.h */,
+ 63C1FC331424261C0074CF99 /* NXOAuth2Constants.m */,
+ 63C1FC341424261C0074CF99 /* NXOAuth2FileStreamWrapper.h */,
+ 63C1FC351424261C0074CF99 /* NXOAuth2FileStreamWrapper.m */,
+ 63C1FC361424261C0074CF99 /* NXOAuth2PostBodyPart.h */,
+ 63C1FC371424261C0074CF99 /* NXOAuth2PostBodyPart.m */,
+ 63C1FC381424261C0074CF99 /* NXOAuth2PostBodyStream.h */,
+ 63C1FC391424261C0074CF99 /* NXOAuth2PostBodyStream.m */,
+ 63C1FC3A1424261C0074CF99 /* NXOAuth2TrustDelegate.h */,
+ );
+ path = OAuth2Client;
+ sourceTree = "<group>";
+ };
+ 63C1FC5A1424266B0074CF99 /* Util */ = {
+ isa = PBXGroup;
+ children = (
+ 63C1FC5B142426750074CF99 /* Reachability.m */,
+ 63C1FC5C142426750074CF99 /* Reachability.h */,
+ );
+ name = Util;
+ sourceTree = "<group>";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ 63C1FBAE1424230F0074CF99 /* runkeepersample */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 63C1FBE61424230F0074CF99 /* Build configuration list for PBXNativeTarget "runkeepersample" */;
+ buildPhases = (
+ 63C1FBAB1424230F0074CF99 /* Sources */,
+ 63C1FBAC1424230F0074CF99 /* Frameworks */,
+ 63C1FBAD1424230F0074CF99 /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = runkeepersample;
+ productName = runkeepersample;
+ productReference = 63C1FBAF1424230F0074CF99 /* runkeepersample.app */;
+ productType = "com.apple.product-type.application";
+ };
+ 63C1FBD21424230F0074CF99 /* runkeepersampleTests */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 63C1FBE91424230F0074CF99 /* Build configuration list for PBXNativeTarget "runkeepersampleTests" */;
+ buildPhases = (
+ 63C1FBCE1424230F0074CF99 /* Sources */,
+ 63C1FBCF1424230F0074CF99 /* Frameworks */,
+ 63C1FBD01424230F0074CF99 /* Resources */,
+ 63C1FBD11424230F0074CF99 /* ShellScript */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ 63C1FBD81424230F0074CF99 /* PBXTargetDependency */,
+ );
+ name = runkeepersampleTests;
+ productName = runkeepersampleTests;
+ productReference = 63C1FBD31424230F0074CF99 /* runkeepersampleTests.octest */;
+ productType = "com.apple.product-type.bundle";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ 63C1FBA61424230F0074CF99 /* Project object */ = {
+ isa = PBXProject;
+ buildConfigurationList = 63C1FBA91424230F0074CF99 /* Build configuration list for PBXProject "runkeepersample" */;
+ compatibilityVersion = "Xcode 3.2";
+ developmentRegion = English;
+ hasScannedForEncodings = 0;
+ knownRegions = (
+ en,
+ );
+ mainGroup = 63C1FBA41424230F0074CF99;
+ productRefGroup = 63C1FBB01424230F0074CF99 /* Products */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ 63C1FBAE1424230F0074CF99 /* runkeepersample */,
+ 63C1FBD21424230F0074CF99 /* runkeepersampleTests */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ 63C1FBAD1424230F0074CF99 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 63C1FBBE1424230F0074CF99 /* InfoPlist.strings in Resources */,
+ 63C1FBC71424230F0074CF99 /* MainWindow.xib in Resources */,
+ 63C1FBCD1424230F0074CF99 /* RootViewController.xib in Resources */,
+ 63C1FBF1142424CF0074CF99 /* connect-blue-black-300x57.png in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 63C1FBD01424230F0074CF99 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 63C1FBDE1424230F0074CF99 /* InfoPlist.strings in Resources */,
+ 63C1FBE11424230F0074CF99 /* runkeepersampleTests.h in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXShellScriptBuildPhase section */
+ 63C1FBD11424230F0074CF99 /* ShellScript */ = {
+ isa = PBXShellScriptBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ inputPaths = (
+ );
+ outputPaths = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ shellPath = /bin/sh;
+ shellScript = "# Run the unit tests in this test bundle.\n\"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests\"\n";
+ };
+/* End PBXShellScriptBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ 63C1FBAB1424230F0074CF99 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 63C1FBC11424230F0074CF99 /* main.m in Sources */,
+ 63C1FBC41424230F0074CF99 /* runkeepersampleAppDelegate.m in Sources */,
+ 63C1FBCA1424230F0074CF99 /* RootViewController.m in Sources */,
+ 63C1FBEE142423E40074CF99 /* PositionTracker.m in Sources */,
+ 63C1FC3C1424261C0074CF99 /* NSObject+SBJson.m in Sources */,
+ 63C1FC3D1424261C0074CF99 /* SBJsonParser.m in Sources */,
+ 63C1FC3E1424261C0074CF99 /* SBJsonStreamParser.m in Sources */,
+ 63C1FC3F1424261C0074CF99 /* SBJsonStreamParserAccumulator.m in Sources */,
+ 63C1FC401424261C0074CF99 /* SBJsonStreamParserAdapter.m in Sources */,
+ 63C1FC411424261C0074CF99 /* SBJsonStreamParserState.m in Sources */,
+ 63C1FC421424261C0074CF99 /* SBJsonStreamWriter.m in Sources */,
+ 63C1FC431424261C0074CF99 /* SBJsonStreamWriterAccumulator.m in Sources */,
+ 63C1FC441424261C0074CF99 /* SBJsonStreamWriterState.m in Sources */,
+ 63C1FC451424261C0074CF99 /* SBJsonTokeniser.m in Sources */,
+ 63C1FC461424261C0074CF99 /* SBJsonUTF8Stream.m in Sources */,
+ 63C1FC471424261C0074CF99 /* SBJsonWriter.m in Sources */,
+ 63C1FC481424261C0074CF99 /* ASIAuthenticationDialog.m in Sources */,
+ 63C1FC491424261C0074CF99 /* ASIDataCompressor.m in Sources */,
+ 63C1FC4A1424261C0074CF99 /* ASIDataDecompressor.m in Sources */,
+ 63C1FC4B1424261C0074CF99 /* ASIDownloadCache.m in Sources */,
+ 63C1FC4C1424261C0074CF99 /* ASIFormDataRequest.m in Sources */,
+ 63C1FC4D1424261C0074CF99 /* ASIHTTPRequest.m in Sources */,
+ 63C1FC4E1424261C0074CF99 /* ASIInputStream.m in Sources */,
+ 63C1FC4F1424261C0074CF99 /* ASINetworkQueue.m in Sources */,
+ 63C1FC501424261C0074CF99 /* NSData+NXOAuth2.m in Sources */,
+ 63C1FC511424261C0074CF99 /* NSString+NXOAuth2.m in Sources */,
+ 63C1FC521424261C0074CF99 /* NSURL+NXOAuth2.m in Sources */,
+ 63C1FC531424261C0074CF99 /* NXOAuth2AccessToken.m in Sources */,
+ 63C1FC541424261C0074CF99 /* NXOAuth2Client.m in Sources */,
+ 63C1FC551424261C0074CF99 /* NXOAuth2Connection.m in Sources */,
+ 63C1FC561424261C0074CF99 /* NXOAuth2Constants.m in Sources */,
+ 63C1FC571424261C0074CF99 /* NXOAuth2FileStreamWrapper.m in Sources */,
+ 63C1FC581424261C0074CF99 /* NXOAuth2PostBodyPart.m in Sources */,
+ 63C1FC591424261C0074CF99 /* NXOAuth2PostBodyStream.m in Sources */,
+ 63C1FC5D142426750074CF99 /* Reachability.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 63C1FBCE1424230F0074CF99 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 63C1FBE31424230F0074CF99 /* runkeepersampleTests.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXTargetDependency section */
+ 63C1FBD81424230F0074CF99 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 63C1FBAE1424230F0074CF99 /* runkeepersample */;
+ targetProxy = 63C1FBD71424230F0074CF99 /* PBXContainerItemProxy */;
+ };
+/* End PBXTargetDependency section */
+
+/* Begin PBXVariantGroup section */
+ 63C1FBBC1424230F0074CF99 /* InfoPlist.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 63C1FBBD1424230F0074CF99 /* en */,
+ );
+ name = InfoPlist.strings;
+ sourceTree = "<group>";
+ };
+ 63C1FBC51424230F0074CF99 /* MainWindow.xib */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 63C1FBC61424230F0074CF99 /* en */,
+ );
+ name = MainWindow.xib;
+ sourceTree = "<group>";
+ };
+ 63C1FBCB1424230F0074CF99 /* RootViewController.xib */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 63C1FBCC1424230F0074CF99 /* en */,
+ );
+ name = RootViewController.xib;
+ sourceTree = "<group>";
+ };
+ 63C1FBDC1424230F0074CF99 /* InfoPlist.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 63C1FBDD1424230F0074CF99 /* en */,
+ );
+ name = InfoPlist.strings;
+ sourceTree = "<group>";
+ };
+/* End PBXVariantGroup section */
+
+/* Begin XCBuildConfiguration section */
+ 63C1FBE41424230F0074CF99 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_BIT)";
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = DEBUG;
+ GCC_SYMBOLS_PRIVATE_EXTERN = NO;
+ GCC_VERSION = com.apple.compilers.llvmgcc42;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 4.3;
+ SDKROOT = iphoneos;
+ };
+ name = Debug;
+ };
+ 63C1FBE51424230F0074CF99 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_BIT)";
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_VERSION = com.apple.compilers.llvmgcc42;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 4.3;
+ OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
+ SDKROOT = iphoneos;
+ };
+ name = Release;
+ };
+ 63C1FBE71424230F0074CF99 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ COPY_PHASE_STRIP = NO;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "runkeepersample/runkeepersample-Prefix.pch";
+ INFOPLIST_FILE = "runkeepersample/runkeepersample-Info.plist";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ WRAPPER_EXTENSION = app;
+ };
+ name = Debug;
+ };
+ 63C1FBE81424230F0074CF99 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ COPY_PHASE_STRIP = YES;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "runkeepersample/runkeepersample-Prefix.pch";
+ INFOPLIST_FILE = "runkeepersample/runkeepersample-Info.plist";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ VALIDATE_PRODUCT = YES;
+ WRAPPER_EXTENSION = app;
+ };
+ name = Release;
+ };
+ 63C1FBEA1424230F0074CF99 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/runkeepersample.app/runkeepersample";
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(SDKROOT)/Developer/Library/Frameworks",
+ "$(DEVELOPER_LIBRARY_DIR)/Frameworks",
+ );
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "runkeepersampleTests/runkeepersampleTests-Prefix.pch";
+ INFOPLIST_FILE = "runkeepersampleTests/runkeepersampleTests-Info.plist";
+ OTHER_LDFLAGS = (
+ "-framework",
+ SenTestingKit,
+ );
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ TEST_HOST = "$(BUNDLE_LOADER)";
+ WRAPPER_EXTENSION = octest;
+ };
+ name = Debug;
+ };
+ 63C1FBEB1424230F0074CF99 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/runkeepersample.app/runkeepersample";
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(SDKROOT)/Developer/Library/Frameworks",
+ "$(DEVELOPER_LIBRARY_DIR)/Frameworks",
+ );
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "runkeepersampleTests/runkeepersampleTests-Prefix.pch";
+ INFOPLIST_FILE = "runkeepersampleTests/runkeepersampleTests-Info.plist";
+ OTHER_LDFLAGS = (
+ "-framework",
+ SenTestingKit,
+ );
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ TEST_HOST = "$(BUNDLE_LOADER)";
+ WRAPPER_EXTENSION = octest;
+ };
+ name = Release;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ 63C1FBA91424230F0074CF99 /* Build configuration list for PBXProject "runkeepersample" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 63C1FBE41424230F0074CF99 /* Debug */,
+ 63C1FBE51424230F0074CF99 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ 63C1FBE61424230F0074CF99 /* Build configuration list for PBXNativeTarget "runkeepersample" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 63C1FBE71424230F0074CF99 /* Debug */,
+ 63C1FBE81424230F0074CF99 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ };
+ 63C1FBE91424230F0074CF99 /* Build configuration list for PBXNativeTarget "runkeepersampleTests" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 63C1FBEA1424230F0074CF99 /* Debug */,
+ 63C1FBEB1424230F0074CF99 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = 63C1FBA61424230F0074CF99 /* Project object */;
+}
17 runkeepersample/runkeepersample/PositionTracker.h
View
@@ -0,0 +1,17 @@
+//
+// PositionTracker.h
+// rrgps-iphone
+//
+// Created by Shawn Hyam on 10-10-26.
+// Copyright 2010 __MyCompanyName__. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <CoreLocation/CoreLocation.h>
+#import <AVFoundation/AVFoundation.h>
+
+@interface PositionTracker : NSObject <CLLocationManagerDelegate> {
+ CLLocationManager *locationManager;
+}
+
+@end
40 runkeepersample/runkeepersample/PositionTracker.m
View
@@ -0,0 +1,40 @@
+//
+// PositionTracker.m
+// rrgps-iphone
+//
+// Created by Shawn Hyam on 10-10-26.
+// Copyright 2010 __MyCompanyName__. All rights reserved.
+//
+
+#import "PositionTracker.h"
+//#import "JSON.h"
+
+
+
+@implementation PositionTracker
+
+
+- (id)init {
+ if (self = [super init]) {
+ locationManager = [[CLLocationManager alloc] init];
+ locationManager.delegate = self;
+ locationManager.desiredAccuracy = kCLLocationAccuracyBest;
+ locationManager.distanceFilter = 0.0;
+ [locationManager startUpdatingLocation];
+ }
+ return self;
+}
+
+- (void)dealloc {
+ [super dealloc];
+ [locationManager stopUpdatingLocation];
+ [locationManager release];
+}
+
+
+- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
+
+}
+
+
+@end
22 runkeepersample/runkeepersample/RootViewController.h
View
@@ -0,0 +1,22 @@
+//
+// RootViewController.h
+// runkeepersample
+//
+// Created by Reid van Melle on 11-09-16.
+// Copyright 2011 __MyCompanyName__. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+@interface RootViewController : UIViewController {
+
+}
+
+@property (nonatomic, retain) IBOutlet UILabel *progressLabel;
+@property (nonatomic, retain) IBOutlet UIButton *startButton;
+
+- (IBAction)toggleStart;
+- (IBAction)connectToRunKeeper;
+
+
+@end
84 runkeepersample/runkeepersample/RootViewController.m
View
@@ -0,0 +1,84 @@
+//
+// RootViewController.m
+// runkeepersample
+//
+// Created by Reid van Melle on 11-09-16.
+// Copyright 2011 __MyCompanyName__. All rights reserved.
+//
+
+#import "RootViewController.h"
+
+@implementation RootViewController
+
+@synthesize progressLabel, startButton;
+
+- (void)viewDidLoad
+{
+ [super viewDidLoad];
+ self.title = @"RunKeeper Sample";
+}
+
+- (void)viewWillAppear:(BOOL)animated
+{
+ [super viewWillAppear:animated];
+}
+
+- (void)viewDidAppear:(BOOL)animated
+{
+ [super viewDidAppear:animated];
+}
+
+- (void)viewWillDisappear:(BOOL)animated
+{
+ [super viewWillDisappear:animated];
+}
+
+- (void)viewDidDisappear:(BOOL)animated
+{
+ [super viewDidDisappear:animated];
+}
+
+- (IBAction)toggleStart
+{
+
+}
+
+- (IBAction)connectToRunKeeper
+{
+
+}
+
+/*
+ // Override to allow orientations other than the default portrait orientation.
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ // Return YES for supported orientations.
+ return (interfaceOrientation == UIInterfaceOrientationPortrait);
+}
+ */
+
+- (void)didReceiveMemoryWarning
+{
+ // Releases the view if it doesn't have a superview.
+ [super didReceiveMemoryWarning];
+
+ // Relinquish ownership any cached data, images, etc that aren't in use.
+}
+
+- (void)viewDidUnload
+{
+ [super viewDidUnload];
+ self.progressLabel = nil;
+ self.startButton = nil;
+
+ // Relinquish ownership of anything that can be recreated in viewDidLoad or on demand.
+ // For example: self.myOutlet = nil;
+}
+
+- (void)dealloc
+{
+ [super dealloc];
+ [self.progressLabel release];
+ [self.startButton release];
+}
+
+@end
BIN  runkeepersample/runkeepersample/connect-blue-black-300x57.png
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2  runkeepersample/runkeepersample/en.lproj/InfoPlist.strings
View
@@ -0,0 +1,2 @@
+/* Localized versions of Info.plist keys */
+
542 runkeepersample/runkeepersample/en.lproj/MainWindow.xib
View
@@ -0,0 +1,542 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
+ <data>
+ <int key="IBDocument.SystemTarget">1024</int>
+ <string key="IBDocument.SystemVersion">10D571</string>
+ <string key="IBDocument.InterfaceBuilderVersion">786</string>
+ <string key="IBDocument.AppKitVersion">1038.29</string>
+ <string key="IBDocument.HIToolboxVersion">460.00</string>
+ <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
+ <string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ <string key="NS.object.0">112</string>
+ </object>
+ <object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <integer value="13"/>
+ </object>
+ <object class="NSArray" key="IBDocument.PluginDependencies">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ </object>
+ <object class="NSMutableDictionary" key="IBDocument.Metadata">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSArray" key="dict.sortedKeys" id="0">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ </object>
+ <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBProxyObject" id="841351856">
+ <string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ </object>
+ <object class="IBProxyObject" id="302016328">
+ <string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ </object>
+ <object class="IBUICustomObject" id="664661524">
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ </object>
+ <object class="IBUIWindow" id="380026005">
+ <nil key="NSNextResponder"/>
+ <int key="NSvFlags">1316</int>
+ <object class="NSPSMatrix" key="NSFrameMatrix"/>
+ <string key="NSFrameSize">{320, 480}</string>
+ <object class="NSColor" key="IBUIBackgroundColor">
+ <int key="NSColorSpace">1</int>
+ <bytes key="NSRGB">MSAxIDEAA</bytes>
+ </object>
+ <bool key="IBUIOpaque">NO</bool>
+ <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
+ <object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics"/>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ <bool key="IBUIResizesToFullScreen">YES</bool>
+ </object>
+ <object class="IBUINavigationController" id="701001926">
+ <object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics"/>
+ <object class="IBUISimulatedOrientationMetrics" key="IBUISimulatedOrientationMetrics">
+ <int key="interfaceOrientation">1</int>
+ </object>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ <bool key="IBUIHorizontal">NO</bool>
+ <object class="IBUINavigationBar" key="IBUINavigationBar" id="207850653">
+ <nil key="NSNextResponder"/>
+ <int key="NSvFlags">256</int>
+ <string key="NSFrameSize">{0, 0}</string>
+ <bool key="IBUIOpaque">NO</bool>
+ <bool key="IBUIClipsSubviews">YES</bool>
+ <bool key="IBUIMultipleTouchEnabled">YES</bool>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ </object>
+ <object class="NSMutableArray" key="IBUIViewControllers">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBUIViewController" id="619226028">
+ <object class="IBUINavigationItem" key="IBUINavigationItem" id="394667715">
+ <reference key="IBUINavigationBar"/>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ </object>
+ <reference key="IBUIParentViewController" ref="701001926"/>
+ <string key="IBUINibName">RootViewController</string>
+ <object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics"/>
+ <object class="IBUISimulatedOrientationMetrics" key="IBUISimulatedOrientationMetrics">
+ <int key="interfaceOrientation">1</int>
+ </object>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ <bool key="IBUIHorizontal">NO</bool>
+ </object>
+ </object>
+ </object>
+ </object>
+ <object class="IBObjectContainer" key="IBDocument.Objects">
+ <object class="NSMutableArray" key="connectionRecords">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBConnectionRecord">
+ <object class="IBCocoaTouchOutletConnection" key="connection">
+ <string key="label">delegate</string>
+ <reference key="source" ref="841351856"/>
+ <reference key="destination" ref="664661524"/>
+ </object>
+ <int key="connectionID">4</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBCocoaTouchOutletConnection" key="connection">
+ <string key="label">window</string>
+ <reference key="source" ref="664661524"/>
+ <reference key="destination" ref="380026005"/>
+ </object>
+ <int key="connectionID">5</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBCocoaTouchOutletConnection" key="connection">
+ <string key="label">navigationController</string>
+ <reference key="source" ref="664661524"/>
+ <reference key="destination" ref="701001926"/>
+ </object>
+ <int key="connectionID">15</int>
+ </object>
+ </object>
+ <object class="IBMutableOrderedSet" key="objectRecords">
+ <object class="NSArray" key="orderedObjects">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBObjectRecord">
+ <int key="objectID">0</int>
+ <reference key="object" ref="0"/>
+ <reference key="children" ref="1000"/>
+ <nil key="parent"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">2</int>
+ <reference key="object" ref="380026005"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ <reference key="parent" ref="0"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">-1</int>
+ <reference key="object" ref="841351856"/>
+ <reference key="parent" ref="0"/>
+ <string key="objectName">File's Owner</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">3</int>
+ <reference key="object" ref="664661524"/>
+ <reference key="parent" ref="0"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">-2</int>
+ <reference key="object" ref="302016328"/>
+ <reference key="parent" ref="0"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">9</int>
+ <reference key="object" ref="701001926"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="207850653"/>
+ <reference ref="619226028"/>
+ </object>
+ <reference key="parent" ref="0"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">11</int>
+ <reference key="object" ref="207850653"/>
+ <reference key="parent" ref="701001926"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">13</int>
+ <reference key="object" ref="619226028"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="394667715"/>
+ </object>
+ <reference key="parent" ref="701001926"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">14</int>
+ <reference key="object" ref="394667715"/>
+ <reference key="parent" ref="619226028"/>
+ </object>
+ </object>
+ </object>
+ <object class="NSMutableDictionary" key="flattenedProperties">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>-1.CustomClassName</string>
+ <string>-2.CustomClassName</string>
+ <string>11.IBPluginDependency</string>
+ <string>13.CustomClassName</string>
+ <string>13.IBPluginDependency</string>
+ <string>2.IBAttributePlaceholdersKey</string>
+ <string>2.IBEditorWindowLastContentRect</string>
+ <string>2.IBPluginDependency</string>
+ <string>3.CustomClassName</string>
+ <string>3.IBPluginDependency</string>
+ <string>9.IBEditorWindowLastContentRect</string>
+ <string>9.IBPluginDependency</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>UIApplication</string>
+ <string>UIResponder</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ <string>RootViewController</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ <object class="NSMutableDictionary">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference key="dict.sortedKeys" ref="0"/>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ </object>
+ <string>{{673, 376}, {320, 480}}</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ <string>runkeepersampleAppDelegate</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ <string>{{186, 376}, {320, 480}}</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ </object>
+ </object>
+ <object class="NSMutableDictionary" key="unlocalizedProperties">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference key="dict.sortedKeys" ref="0"/>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ </object>
+ <nil key="activeLocalization"/>
+ <object class="NSMutableDictionary" key="localizations">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference key="dict.sortedKeys" ref="0"/>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ </object>
+ <nil key="sourceID"/>
+ <int key="maxID">16</int>
+ </object>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <object class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBPartialClassDescription">
+ <string key="className">RootViewController</string>
+ <string key="superclassName">UITableViewController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">RootViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIWindow</string>
+ <string key="superclassName">UIView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBUserSource</string>
+ <string key="minorKey"/>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">runkeepersampleAppDelegate</string>
+ <string key="superclassName">NSObject</string>
+ <object class="NSMutableDictionary" key="outlets">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>navigationController</string>
+ <string>window</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>UINavigationController</string>
+ <string>UIWindow</string>
+ </object>
+ </object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>navigationController</string>
+ <string>window</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBToOneOutletInfo">
+ <string key="name">navigationController</string>
+ <string key="candidateClassName">UINavigationController</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">window</string>
+ <string key="candidateClassName">UIWindow</string>
+ </object>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">runkeepersampleAppDelegate.h</string>
+ </object>
+ </object>
+ </object>
+ <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSError.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSObject.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSThread.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSURL.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UIAccessibility.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UINibLoading.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier" id="48103097">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UIResponder.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIApplication</string>
+ <string key="superclassName">UIResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UIApplication.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIBarButtonItem</string>
+ <string key="superclassName">UIBarItem</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UIBarButtonItem.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIBarItem</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UIBarItem.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UINavigationBar</string>
+ <string key="superclassName">UIView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier" id="193736137">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UINavigationBar.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UINavigationController</string>
+ <string key="superclassName">UIViewController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier" id="720195805">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UINavigationController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UINavigationItem</string>
+ <string key="superclassName">NSObject</string>
+ <reference key="sourceIdentifier" ref="193736137"/>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIResponder</string>
+ <string key="superclassName">NSObject</string>
+ <reference key="sourceIdentifier" ref="48103097"/>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UISearchBar</string>
+ <string key="superclassName">UIView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UISearchBar.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UISearchDisplayController</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UISearchDisplayController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UITableViewController</string>
+ <string key="superclassName">UIViewController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UITableViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UITextField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIView</string>
+ <string key="superclassName">UIResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UIView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIViewController</string>
+ <reference key="sourceIdentifier" ref="720195805"/>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIViewController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UIPopoverController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIViewController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UISplitViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIViewController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UITabBarController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIViewController</string>
+ <string key="superclassName">UIResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UIViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">UIWindow</string>
+ <string key="superclassName">UIView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">UIKit.framework/Headers/UIWindow.h</string>
+ </object>
+ </object>
+ </object>
+ </object>
+ <int key="IBDocument.localizationMode">0</int>
+ <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
+ <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
+ <integer value="1024" key="NS.object.0"/>
+ </object>
+ <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
+ <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
+ <integer value="3100" key="NS.object.0"/>
+ </object>
+ <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
+ <string key="IBDocument.LastKnownRelativeProjectPath">runkeepersample.xcodeproj</string>
+ <int key="IBDocument.defaultPropertyAccessControl">3</int>
+ <string key="IBCocoaTouchPluginVersion">112</string>
+ </data>
+</archive>
337 runkeepersample/runkeepersample/en.lproj/RootViewController.xib
View
@@ -0,0 +1,337 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
+ <data>
+ <int key="IBDocument.SystemTarget">784</int>
+ <string key="IBDocument.SystemVersion">10K549</string>
+ <string key="IBDocument.InterfaceBuilderVersion">1306</string>
+ <string key="IBDocument.AppKitVersion">1038.36</string>
+ <string key="IBDocument.HIToolboxVersion">461.00</string>
+ <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
+ <string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ <string key="NS.object.0">301</string>
+ </object>
+ <object class="NSArray" key="IBDocument.IntegratedClassDependencies">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>IBUIButton</string>
+ <string>IBUIView</string>
+ <string>IBUILabel</string>
+ <string>IBProxyObject</string>
+ </object>
+ <object class="NSArray" key="IBDocument.PluginDependencies">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ </object>
+ <object class="NSMutableDictionary" key="IBDocument.Metadata">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSArray" key="dict.sortedKeys" id="0">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ <reference key="dict.values" ref="0"/>
+ </object>
+ <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBProxyObject" id="841351856">
+ <string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ </object>
+ <object class="IBProxyObject" id="371349661">
+ <string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ </object>
+ <object class="IBUIView" id="179956389">
+ <reference key="NSNextResponder"/>
+ <int key="NSvFlags">292</int>
+ <object class="NSMutableArray" key="NSSubviews">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBUIButton" id="1068972633">
+ <reference key="NSNextResponder" ref="179956389"/>
+ <int key="NSvFlags">288</int>
+ <string key="NSFrame">{{89, 157}, {143, 71}}</string>
+ <reference key="NSSuperview" ref="179956389"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="895419225"/>
+ <bool key="IBUIOpaque">NO</bool>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ <int key="IBUIContentHorizontalAlignment">0</int>
+ <int key="IBUIContentVerticalAlignment">0</int>
+ <object class="NSFont" key="IBUIFont" id="675644361">
+ <string key="NSName">Helvetica-Bold</string>
+ <double key="NSSize">15</double>
+ <int key="NSfFlags">16</int>
+ </object>
+ <int key="IBUIButtonType">1</int>
+ <string key="IBUINormalTitle">START</string>
+ <object class="NSColor" key="IBUIHighlightedTitleColor" id="551853887">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MQA</bytes>
+ </object>
+ <object class="NSColor" key="IBUINormalTitleColor">
+ <int key="NSColorSpace">1</int>
+ <bytes key="NSRGB">MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA</bytes>
+ </object>
+ <object class="NSColor" key="IBUINormalTitleShadowColor" id="1068649727">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MC41AA</bytes>
+ </object>
+ </object>
+ <object class="IBUIButton" id="895419225">
+ <reference key="NSNextResponder" ref="179956389"/>
+ <int key="NSvFlags">288</int>
+ <string key="NSFrame">{{10, 316}, {300, 57}}</string>
+ <reference key="NSSuperview" ref="179956389"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView"/>
+ <bool key="IBUIOpaque">NO</bool>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ <int key="IBUIContentHorizontalAlignment">0</int>
+ <int key="IBUIContentVerticalAlignment">0</int>
+ <reference key="IBUIFont" ref="675644361"/>
+ <reference key="IBUIHighlightedTitleColor" ref="551853887"/>
+ <object class="NSColor" key="IBUINormalTitleColor">
+ <int key="NSColorSpace">1</int>
+ <bytes key="NSRGB">MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA</bytes>
+ </object>
+ <reference key="IBUINormalTitleShadowColor" ref="1068649727"/>
+ <object class="NSCustomResource" key="IBUINormalImage">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">connect-blue-black-300x57.png</string>
+ </object>
+ </object>
+ <object class="IBUILabel" id="367054478">
+ <reference key="NSNextResponder" ref="179956389"/>
+ <int key="NSvFlags">292</int>
+ <string key="NSFrame">{{20, 31}, {280, 69}}</string>
+ <reference key="NSSuperview" ref="179956389"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="1068972633"/>
+ <bool key="IBUIOpaque">NO</bool>
+ <bool key="IBUIClipsSubviews">YES</bool>
+ <int key="IBUIContentMode">7</int>
+ <bool key="IBUIUserInteractionEnabled">NO</bool>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ <string key="IBUIText">3:46</string>
+ <object class="NSFont" key="IBUIFont">
+ <string key="NSName">Helvetica</string>
+ <double key="NSSize">48</double>
+ <int key="NSfFlags">16</int>
+ </object>
+ <object class="NSColor" key="IBUITextColor">
+ <int key="NSColorSpace">1</int>
+ <bytes key="NSRGB">MCAwIDAAA</bytes>
+ </object>
+ <nil key="IBUIHighlightedColor"/>
+ <int key="IBUIBaselineAdjustment">1</int>
+ <float key="IBUIMinimumFontSize">24</float>
+ <int key="IBUITextAlignment">1</int>
+ </object>
+ </object>
+ <string key="NSFrameSize">{320, 460}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="367054478"/>
+ <object class="NSColor" key="IBUIBackgroundColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MQA</bytes>
+ <object class="NSColorSpace" key="NSCustomColorSpace">
+ <int key="NSID">2</int>
+ </object>
+ </object>
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ </object>
+ </object>
+ <object class="IBObjectContainer" key="IBDocument.Objects">
+ <object class="NSMutableArray" key="connectionRecords">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBConnectionRecord">
+ <object class="IBCocoaTouchOutletConnection" key="connection">
+ <string key="label">view</string>
+ <reference key="source" ref="841351856"/>
+ <reference key="destination" ref="179956389"/>
+ </object>
+ <int key="connectionID">7</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBCocoaTouchEventConnection" key="connection">
+ <string key="label">toggleStart</string>
+ <reference key="source" ref="1068972633"/>
+ <reference key="destination" ref="841351856"/>
+ <int key="IBEventType">7</int>
+ </object>
+ <int key="connectionID">11</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBCocoaTouchEventConnection" key="connection">
+ <string key="label">connectToRunKeeper</string>
+ <reference key="source" ref="895419225"/>
+ <reference key="destination" ref="841351856"/>
+ <int key="IBEventType">7</int>
+ </object>
+ <int key="connectionID">12</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBCocoaTouchOutletConnection" key="connection">
+ <string key="label">progressLabel</string>
+ <reference key="source" ref="841351856"/>
+ <reference key="destination" ref="367054478"/>
+ </object>
+ <int key="connectionID">13</int>
+ </object>
+ </object>
+ <object class="IBMutableOrderedSet" key="objectRecords">
+ <object class="NSArray" key="orderedObjects">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBObjectRecord">
+ <int key="objectID">0</int>
+ <reference key="object" ref="0"/>
+ <reference key="children" ref="1000"/>
+ <nil key="parent"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">-1</int>
+ <reference key="object" ref="841351856"/>
+ <reference key="parent" ref="0"/>
+ <string key="objectName">File's Owner</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">-2</int>
+ <reference key="object" ref="371349661"/>
+ <reference key="parent" ref="0"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">6</int>
+ <reference key="object" ref="179956389"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="367054478"/>
+ <reference ref="1068972633"/>
+ <reference ref="895419225"/>
+ </object>
+ <reference key="parent" ref="0"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">8</int>
+ <reference key="object" ref="1068972633"/>
+ <reference key="parent" ref="179956389"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">9</int>
+ <reference key="object" ref="895419225"/>
+ <reference key="parent" ref="179956389"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">10</int>
+ <reference key="object" ref="367054478"/>
+ <reference key="parent" ref="179956389"/>
+ </object>
+ </object>
+ </object>
+ <object class="NSMutableDictionary" key="flattenedProperties">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>-1.CustomClassName</string>
+ <string>-2.CustomClassName</string>
+ <string>10.IBPluginDependency</string>
+ <string>6.IBPluginDependency</string>
+ <string>8.IBPluginDependency</string>
+ <string>9.IBPluginDependency</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>RootViewController</string>
+ <string>UIResponder</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+ </object>
+ </object>
+ <object class="NSMutableDictionary" key="unlocalizedProperties">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference key="dict.sortedKeys" ref="0"/>
+ <reference key="dict.values" ref="0"/>
+ </object>
+ <nil key="activeLocalization"/>
+ <object class="NSMutableDictionary" key="localizations">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference key="dict.sortedKeys" ref="0"/>
+ <reference key="dict.values" ref="0"/>
+ </object>
+ <nil key="sourceID"/>
+ <int key="maxID">13</int>
+ </object>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <object class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBPartialClassDescription">
+ <string key="className">RootViewController</string>
+ <string key="superclassName">UIViewController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>connectToRunKeeper</string>
+ <string>toggleStart</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>id</string>
+ <string>id</string>
+ </object>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>connectToRunKeeper</string>
+ <string>toggleStart</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBActionInfo">
+ <string key="name">connectToRunKeeper</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo">
+ <string key="name">toggleStart</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ </object>
+ <object class="NSMutableDictionary" key="outlets">
+ <string key="NS.key.0">progressLabel</string>
+ <string key="NS.object.0">UILabel</string>
+ </object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <string key="NS.key.0">progressLabel</string>
+ <object class="IBToOneOutletInfo" key="NS.object.0">
+ <string key="name">progressLabel</string>
+ <string key="candidateClassName">UILabel</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">./Classes/RootViewController.h</string>
+ </object>
+ </object>
+ </object>
+ </object>
+ <int key="IBDocument.localizationMode">0</int>
+ <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
+ <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
+ <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
+ <integer value="784" key="NS.object.0"/>
+ </object>
+ <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
+ <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
+ <integer value="3100" key="NS.object.0"/>
+ </object>
+ <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
+ <int key="IBDocument.defaultPropertyAccessControl">3</int>
+ <object class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">
+ <string key="NS.key.0">connect-blue-black-300x57.png</string>
+ <string key="NS.object.0">{300, 57}</string>
+ </object>
+ <string key="IBCocoaTouchPluginVersion">301</string>
+ </data>
+</archive>
17 runkeepersample/runkeepersample/main.m
View
@@ -0,0 +1,17 @@
+//
+// main.m
+// runkeepersample
+//
+// Created by Reid van Melle on 11-09-16.
+// Copyright 2011 __MyCompanyName__. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+int main(int argc, char *argv[])
+{
+ NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
+ int retVal = UIApplicationMain(argc, argv, nil, nil);
+ [pool release];
+ return retVal;
+}
38 runkeepersample/runkeepersample/runkeepersample-Info.plist
View
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>en</string>
+ <key>CFBundleDisplayName</key>
+ <string>${PRODUCT_NAME}</string>
+ <key>CFBundleExecutable</key>
+ <string>${EXECUTABLE_NAME}</string>
+ <key>CFBundleIconFile</key>
+ <string></string>
+ <key>CFBundleIdentifier</key>
+ <string>com.brierwooddesign.${PRODUCT_NAME:rfc1034identifier}</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>${PRODUCT_NAME}</string>
+ <key>CFBundlePackageType</key>
+ <string>APPL</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.0</string>
+ <key>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleVersion</key>
+ <string>1.0</string>
+ <key>LSRequiresIPhoneOS</key>
+ <true/>
+ <key>NSMainNibFile</key>
+ <string>MainWindow</string>
+ <key>UISupportedInterfaceOrientations</key>
+ <array>
+ <string>UIInterfaceOrientationPortrait</string>
+ <string>UIInterfaceOrientationLandscapeLeft</string>
+ <string>UIInterfaceOrientationLandscapeRight</string>
+ </array>
+</dict>
+</plist>
14 runkeepersample/runkeepersample/runkeepersample-Prefix.pch
View
@@ -0,0 +1,14 @@
+//
+// Prefix header for all source files of the 'runkeepersample' target in the 'runkeepersample' project
+//
+
+#import <Availability.h>
+
+#ifndef __IPHONE_3_0
+#warning "This project uses features only available in iPhone SDK 3.0 and later."
+#endif
+
+#ifdef __OBJC__
+ #import <UIKit/UIKit.h>
+ #import <Foundation/Foundation.h>
+#endif
19 runkeepersample/runkeepersample/runkeepersampleAppDelegate.h
View
@@ -0,0 +1,19 @@
+//
+// runkeepersampleAppDelegate.h
+// runkeepersample
+//
+// Created by Reid van Melle on 11-09-16.
+// Copyright 2011 __MyCompanyName__. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+@interface runkeepersampleAppDelegate : NSObject <UIApplicationDelegate> {
+
+}
+
+@property (nonatomic, retain) IBOutlet UIWindow *window;
+
+@property (nonatomic, retain) IBOutlet UINavigationController *navigationController;
+
+@end
73 runkeepersample/runkeepersample/runkeepersampleAppDelegate.m
View
@@ -0,0 +1,73 @@
+//
+// runkeepersampleAppDelegate.m
+// runkeepersample
+//
+// Created by Reid van Melle on 11-09-16.
+// Copyright 2011 __MyCompanyName__. All rights reserved.
+//
+
+#import "runkeepersampleAppDelegate.h"
+
+@implementation runkeepersampleAppDelegate
+
+
+@synthesize window=_window;
+
+@synthesize navigationController=_navigationController;
+
+- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
+{
+ // Override point for customization after application launch.
+ // Add the navigation controller's view to the window and display.
+ self.window.rootViewController = self.navigationController;
+ [self.window makeKeyAndVisible];
+ return YES;
+}
+
+- (void)applicationWillResignActive:(UIApplication *)application
+{
+ /*
+ Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
+ Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
+ */
+}
+
+- (void)applicationDidEnterBackground:(UIApplication *)application
+{
+ /*
+ Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
+ If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
+ */
+}
+
+- (void)applicationWillEnterForeground:(UIApplication *)application
+{
+ /*
+ Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
+ */
+}
+
+- (void)applicationDidBecomeActive:(UIApplication *)application
+{
+ /*
+ Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
+ */
+}
+
+- (void)applicationWillTerminate:(UIApplication *)application
+{
+ /*
+ Called when the application is about to terminate.
+ Save data if appropriate.
+ See also applicationDidEnterBackground:.
+ */
+}
+
+- (void)dealloc
+{
+ [_window release];
+ [_navigationController release];
+ [super dealloc];
+}
+
+@end
2  runkeepersample/runkeepersampleTests/en.lproj/InfoPlist.strings
View
@@ -0,0 +1,2 @@
+/* Localized versions of Info.plist keys */
+
22 runkeepersample/runkeepersampleTests/runkeepersampleTests-Info.plist
View
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>en</string>
+ <key>CFBundleExecutable</key>
+ <string>${EXECUTABLE_NAME}</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.brierwooddesign.${PRODUCT_NAME:rfc1034identifier}</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundlePackageType</key>
+ <string>BNDL</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.0</string>
+ <key>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleVersion</key>
+ <string>1</string>
+</dict>
+</plist>
7 runkeepersample/runkeepersampleTests/runkeepersampleTests-Prefix.pch
View
@@ -0,0 +1,7 @@
+//
+// Prefix header for all source files of the 'runkeepersampleTests' target in the 'runkeepersampleTests' project
+//
+
+#ifdef __OBJC__
+ #import <UIKit/UIKit.h>
+#endif
17 runkeepersample/runkeepersampleTests/runkeepersampleTests.h
View
@@ -0,0 +1,17 @@
+//
+// runkeepersampleTests.h
+// runkeepersampleTests
+//
+// Created by Reid van Melle on 11-09-16.
+// Copyright 2011 __MyCompanyName__. All rights reserved.
+//
+
+#import <SenTestingKit/SenTestingKit.h>
+
+
+@interface runkeepersampleTests : SenTestCase {
+@private
+
+}
+
+@end
33 runkeepersample/runkeepersampleTests/runkeepersampleTests.m
View
@@ -0,0 +1,33 @@
+//
+// runkeepersampleTests.m
+// runkeepersampleTests
+//
+// Created by Reid van Melle on 11-09-16.
+// Copyright 2011 __MyCompanyName__. All rights reserved.
+//
+
+#import "runkeepersampleTests.h"
+
+
+@implementation runkeepersampleTests
+
+- (void)setUp
+{
+ [super setUp];
+
+ // Set-up code here.
+}
+
+- (void)tearDown
+{
+ // Tear-down code here.
+
+ [super tearDown];
+}
+
+- (void)testExample
+{
+ STFail(@"Unit tests are not implemented yet in runkeepersampleTests");
+}
+
+@end
35 vendor/ASI/ASIAuthenticationDialog.h