scratchjr/ios/ScratchJr.xcodeproj/project.pbxproj
Chris Garrity 1420a5947a Split iOS and Android interfaces
Refactor the native interface in preparation for switching iOS to use WKWebview.
* Finally rename the folder for device specific interfaces as `tablet` instead of `iPad`
* Update `import` statements to use the new name
* Create new `iOS.js` and `Android.js` based on previous `iPad/iOS.js` to separate the interfaces
* Add new `OS.js` class to manage the class variables, initialize the device interface delegate methods to the correct interface.
* refactor how  `utils/lib` detects the current platform based on `navigtor.userAgent` based on https://stackoverflow.com/questions/37591279/detect-if-user-is-using-webview-for-android-ios-or-a-regular-browser. previous method relied on the Android interface being loaded or not. It can be difficult to detect the difference between in a browser and in a webview, but for now ScratchJr doesn’t need to worry about running in a browser
2020-08-10 09:11:47 -04:00

714 lines
34 KiB
Text

// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
204D80C218A4140600ECBB8B /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 204D80C118A4140600ECBB8B /* XCTest.framework */; };
204D80C318A4140600ECBB8B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 204D80A818A4140600ECBB8B /* Foundation.framework */; };
204D80C418A4140600ECBB8B /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 204D80AC18A4140600ECBB8B /* UIKit.framework */; };
204D80CC18A4140600ECBB8B /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 204D80CA18A4140600ECBB8B /* InfoPlist.strings */; };
204D80CE18A4140600ECBB8B /* ScratchJrTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 204D80CD18A4140600ECBB8B /* ScratchJrTests.m */; };
7465F19843DCA9DDC62CC852 /* libPods-ScratchJr Free.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7ACBA0233542F96AC72D4D7E /* libPods-ScratchJr Free.a */; };
A7FDEB52BFEDCD9E4520FF89 /* libPods-ScratchJrTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 512C88D0E9938AB5972ACF38 /* libPods-ScratchJrTests.a */; };
D92D0F951C33381B00C573AD /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2001BEB918E237AE008E563F /* MessageUI.framework */; };
D92D0F961C33381B00C573AD /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 20B2227818A53688003BDE44 /* AVFoundation.framework */; };
D92D0F971C33381B00C573AD /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 204D80AC18A4140600ECBB8B /* UIKit.framework */; };
D92D0F981C33381B00C573AD /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 204D80A818A4140600ECBB8B /* Foundation.framework */; };
D92D0F991C33381B00C573AD /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 204D80AA18A4140600ECBB8B /* CoreGraphics.framework */; };
D92D0F9A1C33381B00C573AD /* libsqlite3.0.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 20B2226E18A46327003BDE44 /* libsqlite3.0.dylib */; };
D92D0F9D1C33381B00C573AD /* Settings.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 20B2226818A4404B003BDE44 /* Settings.bundle */; };
D92D0F9E1C33381B00C573AD /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 204D80B118A4140600ECBB8B /* InfoPlist.strings */; };
D92D0F9F1C33381B00C573AD /* View.xib in Resources */ = {isa = PBXBuildFile; fileRef = 204D80DC18A4195E00ECBB8B /* View.xib */; };
D92D0FCA1C3346D200C573AD /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = D92D0FB31C33469A00C573AD /* AppDelegate.m */; };
D92D0FCB1C3346D200C573AD /* CameraMask.m in Sources */ = {isa = PBXBuildFile; fileRef = D92D0FB41C33469A00C573AD /* CameraMask.m */; };
D92D0FCC1C3346D200C573AD /* CameraView.m in Sources */ = {isa = PBXBuildFile; fileRef = D92D0FB51C33469A00C573AD /* CameraView.m */; };
D92D0FCD1C3346DC00C573AD /* Database.m in Sources */ = {isa = PBXBuildFile; fileRef = D92D0FB61C33469A00C573AD /* Database.m */; };
D92D0FCE1C3346DC00C573AD /* IO.m in Sources */ = {isa = PBXBuildFile; fileRef = D92D0FB71C33469A00C573AD /* IO.m */; };
D92D0FCF1C3346DC00C573AD /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = D92D0FB81C33469A00C573AD /* main.m */; };
D92D0FD01C3346DC00C573AD /* RecordSound.m in Sources */ = {isa = PBXBuildFile; fileRef = D92D0FB91C33469A00C573AD /* RecordSound.m */; };
D92D0FD11C3346DC00C573AD /* ScratchJr.m in Sources */ = {isa = PBXBuildFile; fileRef = D92D0FBB1C33469A00C573AD /* ScratchJr.m */; };
D92D0FD21C3346DC00C573AD /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D92D0FBD1C33469A00C573AD /* ViewController.m */; };
D92D0FD31C3346DC00C573AD /* ViewFinder.m in Sources */ = {isa = PBXBuildFile; fileRef = D92D0FBE1C33469A00C573AD /* ViewFinder.m */; };
D965E3971C3EC63A005D792F /* Free-Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = D965E3961C3EC63A005D792F /* Free-Images.xcassets */; };
/* End PBXBuildFile section */
/* Begin PBXBuildRule section */
D92D0FA21C33381B00C573AD /* PBXBuildRule */ = {
isa = PBXBuildRule;
compilerSpec = com.apple.compilers.proxy.script;
fileType = pattern.proxy;
inputFiles = (
);
isEditable = 1;
outputFiles = (
);
script = "";
};
/* End PBXBuildRule section */
/* Begin PBXFileReference section */
2001BEB918E237AE008E563F /* MessageUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MessageUI.framework; path = System/Library/Frameworks/MessageUI.framework; sourceTree = SDKROOT; };
204D80A818A4140600ECBB8B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
204D80AA18A4140600ECBB8B /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
204D80AC18A4140600ECBB8B /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
204D80B218A4140600ECBB8B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
204D80B618A4140600ECBB8B /* ScratchJr-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ScratchJr-Prefix.pch"; sourceTree = "<group>"; };
204D80C018A4140600ECBB8B /* ScratchJrTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ScratchJrTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
204D80C118A4140600ECBB8B /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };
204D80C918A4140600ECBB8B /* ScratchJrTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "ScratchJrTests-Info.plist"; sourceTree = "<group>"; };
204D80CB18A4140600ECBB8B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
204D80CD18A4140600ECBB8B /* ScratchJrTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ScratchJrTests.m; sourceTree = "<group>"; };
204D80DC18A4195E00ECBB8B /* View.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = View.xib; sourceTree = "<group>"; };
20B2226818A4404B003BDE44 /* Settings.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = Settings.bundle; sourceTree = SOURCE_ROOT; };
20B2226E18A46327003BDE44 /* libsqlite3.0.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libsqlite3.0.dylib; path = usr/lib/libsqlite3.0.dylib; sourceTree = SDKROOT; };
20B2227818A53688003BDE44 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; };
512C88D0E9938AB5972ACF38 /* libPods-ScratchJrTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ScratchJrTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
5A3230A01AEC02BC09345F16 /* Pods-ScratchJrTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ScratchJrTests.debug.xcconfig"; path = "Target Support Files/Pods-ScratchJrTests/Pods-ScratchJrTests.debug.xcconfig"; sourceTree = "<group>"; };
72E2C9BF3BE9F67099F0180F /* Pods-ScratchJrTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ScratchJrTests.release.xcconfig"; path = "Target Support Files/Pods-ScratchJrTests/Pods-ScratchJrTests.release.xcconfig"; sourceTree = "<group>"; };
7ACBA0233542F96AC72D4D7E /* libPods-ScratchJr Free.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ScratchJr Free.a"; sourceTree = BUILT_PRODUCTS_DIR; };
97A526F2B60190BFC0BD3081 /* Pods-ScratchJr Free.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ScratchJr Free.debug.xcconfig"; path = "Target Support Files/Pods-ScratchJr Free/Pods-ScratchJr Free.debug.xcconfig"; sourceTree = "<group>"; };
D905DF721C220BA6003DA34A /* free */ = {isa = PBXFileReference; lastKnownFileType = folder; name = free; path = ../editions/free; sourceTree = "<group>"; };
D92D0FA61C33381B00C573AD /* ScratchJr Free.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "ScratchJr Free.app"; sourceTree = BUILT_PRODUCTS_DIR; };
D92D0FB21C33469A00C573AD /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = src/AppDelegate.h; sourceTree = "<group>"; };
D92D0FB31C33469A00C573AD /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = src/AppDelegate.m; sourceTree = "<group>"; };
D92D0FB41C33469A00C573AD /* CameraMask.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CameraMask.m; path = src/CameraMask.m; sourceTree = "<group>"; };
D92D0FB51C33469A00C573AD /* CameraView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CameraView.m; path = src/CameraView.m; sourceTree = "<group>"; };
D92D0FB61C33469A00C573AD /* Database.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Database.m; path = src/Database.m; sourceTree = "<group>"; };
D92D0FB71C33469A00C573AD /* IO.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IO.m; path = src/IO.m; sourceTree = "<group>"; };
D92D0FB81C33469A00C573AD /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = src/main.m; sourceTree = "<group>"; };
D92D0FB91C33469A00C573AD /* RecordSound.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RecordSound.m; path = src/RecordSound.m; sourceTree = "<group>"; };
D92D0FBA1C33469A00C573AD /* ScratchJr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ScratchJr.h; path = src/ScratchJr.h; sourceTree = "<group>"; };
D92D0FBB1C33469A00C573AD /* ScratchJr.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ScratchJr.m; path = src/ScratchJr.m; sourceTree = "<group>"; };
D92D0FBC1C33469A00C573AD /* ViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ViewController.h; path = src/ViewController.h; sourceTree = "<group>"; };
D92D0FBD1C33469A00C573AD /* ViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ViewController.m; path = src/ViewController.m; sourceTree = "<group>"; };
D92D0FBE1C33469A00C573AD /* ViewFinder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ViewFinder.m; path = src/ViewFinder.m; sourceTree = "<group>"; };
D92D0FE41C335BDE00C573AD /* src */ = {isa = PBXFileReference; lastKnownFileType = folder; name = src; path = ../src; sourceTree = "<group>"; };
D965E3961C3EC63A005D792F /* Free-Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = "Free-Images.xcassets"; path = "../editions/free/Free-Images.xcassets"; sourceTree = "<group>"; };
D9DDC1E71B50407A00076A58 /* bin */ = {isa = PBXFileReference; lastKnownFileType = folder; name = bin; path = ../bin; sourceTree = "<group>"; };
F8E5189E06A85870C28705B8 /* Pods-ScratchJr Free.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ScratchJr Free.release.xcconfig"; path = "Target Support Files/Pods-ScratchJr Free/Pods-ScratchJr Free.release.xcconfig"; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
204D80BD18A4140600ECBB8B /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
204D80C218A4140600ECBB8B /* XCTest.framework in Frameworks */,
204D80C418A4140600ECBB8B /* UIKit.framework in Frameworks */,
204D80C318A4140600ECBB8B /* Foundation.framework in Frameworks */,
A7FDEB52BFEDCD9E4520FF89 /* libPods-ScratchJrTests.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
D92D0F941C33381B00C573AD /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
D92D0F951C33381B00C573AD /* MessageUI.framework in Frameworks */,
D92D0F961C33381B00C573AD /* AVFoundation.framework in Frameworks */,
D92D0F971C33381B00C573AD /* UIKit.framework in Frameworks */,
D92D0F981C33381B00C573AD /* Foundation.framework in Frameworks */,
D92D0F991C33381B00C573AD /* CoreGraphics.framework in Frameworks */,
D92D0F9A1C33381B00C573AD /* libsqlite3.0.dylib in Frameworks */,
7465F19843DCA9DDC62CC852 /* libPods-ScratchJr Free.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
204D809C18A4140600ECBB8B = {
isa = PBXGroup;
children = (
D92D0FE41C335BDE00C573AD /* src */,
20B2226818A4404B003BDE44 /* Settings.bundle */,
D9104A9F1C220516004D1708 /* Editions */,
204D80AE18A4140600ECBB8B /* ScratchJr */,
204D80C718A4140600ECBB8B /* ScratchJrTests */,
204D80A718A4140600ECBB8B /* Frameworks */,
204D80A618A4140600ECBB8B /* Products */,
D9DDC1E71B50407A00076A58 /* bin */,
4DECBFAFC6446E944CEF4F32 /* Pods */,
);
sourceTree = "<group>";
};
204D80A618A4140600ECBB8B /* Products */ = {
isa = PBXGroup;
children = (
204D80C018A4140600ECBB8B /* ScratchJrTests.xctest */,
D92D0FA61C33381B00C573AD /* ScratchJr Free.app */,
);
name = Products;
sourceTree = "<group>";
};
204D80A718A4140600ECBB8B /* Frameworks */ = {
isa = PBXGroup;
children = (
2001BEB918E237AE008E563F /* MessageUI.framework */,
20B2227818A53688003BDE44 /* AVFoundation.framework */,
20B2226E18A46327003BDE44 /* libsqlite3.0.dylib */,
204D80A818A4140600ECBB8B /* Foundation.framework */,
204D80AA18A4140600ECBB8B /* CoreGraphics.framework */,
204D80AC18A4140600ECBB8B /* UIKit.framework */,
204D80C118A4140600ECBB8B /* XCTest.framework */,
7ACBA0233542F96AC72D4D7E /* libPods-ScratchJr Free.a */,
512C88D0E9938AB5972ACF38 /* libPods-ScratchJrTests.a */,
);
name = Frameworks;
sourceTree = "<group>";
};
204D80AE18A4140600ECBB8B /* ScratchJr */ = {
isa = PBXGroup;
children = (
D92D0FC91C3346AC00C573AD /* src */,
204D80AF18A4140600ECBB8B /* Supporting Files */,
204D80DC18A4195E00ECBB8B /* View.xib */,
);
path = ScratchJr;
sourceTree = "<group>";
};
204D80AF18A4140600ECBB8B /* Supporting Files */ = {
isa = PBXGroup;
children = (
204D80B118A4140600ECBB8B /* InfoPlist.strings */,
204D80B618A4140600ECBB8B /* ScratchJr-Prefix.pch */,
);
name = "Supporting Files";
sourceTree = "<group>";
};
204D80C718A4140600ECBB8B /* ScratchJrTests */ = {
isa = PBXGroup;
children = (
204D80CD18A4140600ECBB8B /* ScratchJrTests.m */,
204D80C818A4140600ECBB8B /* Supporting Files */,
);
path = ScratchJrTests;
sourceTree = "<group>";
};
204D80C818A4140600ECBB8B /* Supporting Files */ = {
isa = PBXGroup;
children = (
204D80C918A4140600ECBB8B /* ScratchJrTests-Info.plist */,
204D80CA18A4140600ECBB8B /* InfoPlist.strings */,
);
name = "Supporting Files";
sourceTree = "<group>";
};
4DECBFAFC6446E944CEF4F32 /* Pods */ = {
isa = PBXGroup;
children = (
97A526F2B60190BFC0BD3081 /* Pods-ScratchJr Free.debug.xcconfig */,
F8E5189E06A85870C28705B8 /* Pods-ScratchJr Free.release.xcconfig */,
5A3230A01AEC02BC09345F16 /* Pods-ScratchJrTests.debug.xcconfig */,
72E2C9BF3BE9F67099F0180F /* Pods-ScratchJrTests.release.xcconfig */,
);
path = Pods;
sourceTree = "<group>";
};
D9104A9F1C220516004D1708 /* Editions */ = {
isa = PBXGroup;
children = (
D965E3961C3EC63A005D792F /* Free-Images.xcassets */,
D905DF721C220BA6003DA34A /* free */,
);
name = Editions;
sourceTree = "<group>";
};
D92D0FC91C3346AC00C573AD /* src */ = {
isa = PBXGroup;
children = (
D92D0FDF1C33477F00C573AD /* App */,
D92D0FE01C3347D100C573AD /* IO */,
D92D0FDE1C33476A00C573AD /* CameraMic */,
);
name = src;
sourceTree = "<group>";
};
D92D0FDE1C33476A00C573AD /* CameraMic */ = {
isa = PBXGroup;
children = (
D92D0FBB1C33469A00C573AD /* ScratchJr.m */,
D92D0FB51C33469A00C573AD /* CameraView.m */,
D92D0FBE1C33469A00C573AD /* ViewFinder.m */,
D92D0FB41C33469A00C573AD /* CameraMask.m */,
D92D0FB91C33469A00C573AD /* RecordSound.m */,
);
name = CameraMic;
sourceTree = "<group>";
};
D92D0FDF1C33477F00C573AD /* App */ = {
isa = PBXGroup;
children = (
D92D0FBA1C33469A00C573AD /* ScratchJr.h */,
D92D0FB21C33469A00C573AD /* AppDelegate.h */,
D92D0FB31C33469A00C573AD /* AppDelegate.m */,
D92D0FBC1C33469A00C573AD /* ViewController.h */,
D92D0FBD1C33469A00C573AD /* ViewController.m */,
D92D0FB81C33469A00C573AD /* main.m */,
);
name = App;
sourceTree = "<group>";
};
D92D0FE01C3347D100C573AD /* IO */ = {
isa = PBXGroup;
children = (
D92D0FB61C33469A00C573AD /* Database.m */,
D92D0FB71C33469A00C573AD /* IO.m */,
);
name = IO;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
204D80BF18A4140600ECBB8B /* ScratchJrTests */ = {
isa = PBXNativeTarget;
buildConfigurationList = 204D80D418A4140600ECBB8B /* Build configuration list for PBXNativeTarget "ScratchJrTests" */;
buildPhases = (
4AF95ECA9DAE9DCC8A894FC4 /* [CP] Check Pods Manifest.lock */,
204D80BC18A4140600ECBB8B /* Sources */,
204D80BD18A4140600ECBB8B /* Frameworks */,
204D80BE18A4140600ECBB8B /* Resources */,
);
buildRules = (
);
dependencies = (
);
name = ScratchJrTests;
productName = ScratchJrTests;
productReference = 204D80C018A4140600ECBB8B /* ScratchJrTests.xctest */;
productType = "com.apple.product-type.bundle.unit-test";
};
D92D0F861C33381B00C573AD /* ScratchJr Free */ = {
isa = PBXNativeTarget;
buildConfigurationList = D92D0FA31C33381B00C573AD /* Build configuration list for PBXNativeTarget "ScratchJr Free" */;
buildPhases = (
54CC4189E794223B3E82E9B0 /* [CP] Check Pods Manifest.lock */,
D92D0F881C33381B00C573AD /* Run Script */,
D92D0F891C33381B00C573AD /* Sources */,
D92D0F941C33381B00C573AD /* Frameworks */,
D92D0F9C1C33381B00C573AD /* Resources */,
);
buildRules = (
D92D0FA21C33381B00C573AD /* PBXBuildRule */,
);
dependencies = (
);
name = "ScratchJr Free";
productName = ScratchJr;
productReference = D92D0FA61C33381B00C573AD /* ScratchJr Free.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
204D809D18A4140600ECBB8B /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 1110;
ORGANIZATIONNAME = "Playful Invention Company";
TargetAttributes = {
204D80BF18A4140600ECBB8B = {
DevelopmentTeam = TTT4R28WVF;
TestTargetID = 204D80A418A4140600ECBB8B;
};
D92D0F861C33381B00C573AD = {
DevelopmentTeam = W7AR3WMP87;
};
};
};
buildConfigurationList = 204D80A018A4140600ECBB8B /* Build configuration list for PBXProject "ScratchJr" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
Base,
);
mainGroup = 204D809C18A4140600ECBB8B;
productRefGroup = 204D80A618A4140600ECBB8B /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
D92D0F861C33381B00C573AD /* ScratchJr Free */,
204D80BF18A4140600ECBB8B /* ScratchJrTests */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
204D80BE18A4140600ECBB8B /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
204D80CC18A4140600ECBB8B /* InfoPlist.strings in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
D92D0F9C1C33381B00C573AD /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
D92D0F9D1C33381B00C573AD /* Settings.bundle in Resources */,
D965E3971C3EC63A005D792F /* Free-Images.xcassets in Resources */,
D92D0F9E1C33381B00C573AD /* InfoPlist.strings in Resources */,
D92D0F9F1C33381B00C573AD /* View.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
4AF95ECA9DAE9DCC8A894FC4 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
"${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
outputFileListPaths = (
);
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-ScratchJrTests-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
54CC4189E794223B3E82E9B0 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
"${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
outputFileListPaths = (
);
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-ScratchJr Free-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
D92D0F881C33381B00C573AD /* Run Script */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
name = "Run Script";
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "EDITION=free;\n\n../bin/bundle-compile.sh;\n\nrsync -pvtrlL --cvs-exclude \\\n ../editions/$EDITION/ios-resources/* \\\n \"$BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/\";\n\nrsync -pvtrlL --cvs-exclude \\\n ../editions/$EDITION/src/* \\\n \"$BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/HTML5\";\n \nmkdir -p \"$BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/HTML5/pnglibrary\";\n\n../bin/convert-svg-to-png.py -i \"../editions/$EDITION/src/svglibrary/\" -o \"$BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/HTML5/pnglibrary\";\n";
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
204D80BC18A4140600ECBB8B /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
204D80CE18A4140600ECBB8B /* ScratchJrTests.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
D92D0F891C33381B00C573AD /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
D92D0FCD1C3346DC00C573AD /* Database.m in Sources */,
D92D0FCE1C3346DC00C573AD /* IO.m in Sources */,
D92D0FCF1C3346DC00C573AD /* main.m in Sources */,
D92D0FD01C3346DC00C573AD /* RecordSound.m in Sources */,
D92D0FD11C3346DC00C573AD /* ScratchJr.m in Sources */,
D92D0FD21C3346DC00C573AD /* ViewController.m in Sources */,
D92D0FD31C3346DC00C573AD /* ViewFinder.m in Sources */,
D92D0FCA1C3346D200C573AD /* AppDelegate.m in Sources */,
D92D0FCB1C3346D200C573AD /* CameraMask.m in Sources */,
D92D0FCC1C3346D200C573AD /* CameraView.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXVariantGroup section */
204D80B118A4140600ECBB8B /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
204D80B218A4140600ECBB8B /* en */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
204D80CA18A4140600ECBB8B /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
204D80CB18A4140600ECBB8B /* en */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
204D80CF18A4140600ECBB8B /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
COPY_PHASE_STRIP = NO;
ENABLE_BITCODE = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
ONLY_ACTIVE_ARCH = YES;
PROVISIONING_PROFILE = "8f58b6d2-97d0-4e4a-ac2e-3c4ee99770bf";
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = 2;
};
name = Debug;
};
204D80D018A4140600ECBB8B /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
COPY_PHASE_STRIP = YES;
ENABLE_BITCODE = NO;
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
PROVISIONING_PROFILE = "8f58b6d2-97d0-4e4a-ac2e-3c4ee99770bf";
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = 2;
VALIDATE_PRODUCT = YES;
};
name = Release;
};
204D80D518A4140600ECBB8B /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 5A3230A01AEC02BC09345F16 /* Pods-ScratchJrTests.debug.xcconfig */;
buildSettings = {
BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/ScratchJr.app/ScratchJr";
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
FRAMEWORK_SEARCH_PATHS = (
"$(SDKROOT)/Developer/Library/Frameworks",
"$(inherited)",
"$(DEVELOPER_FRAMEWORKS_DIR)",
);
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "ScratchJr/ScratchJr-Prefix.pch";
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
INFOPLIST_FILE = "ScratchJrTests/ScratchJrTests-Info.plist";
PRODUCT_BUNDLE_IDENTIFIER = "PICO.${PRODUCT_NAME:rfc1034identifier}";
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE = "";
TEST_HOST = "$(BUNDLE_LOADER)";
WRAPPER_EXTENSION = xctest;
};
name = Debug;
};
204D80D618A4140600ECBB8B /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 72E2C9BF3BE9F67099F0180F /* Pods-ScratchJrTests.release.xcconfig */;
buildSettings = {
BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/ScratchJr.app/ScratchJr";
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
FRAMEWORK_SEARCH_PATHS = (
"$(SDKROOT)/Developer/Library/Frameworks",
"$(inherited)",
"$(DEVELOPER_FRAMEWORKS_DIR)",
);
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "ScratchJr/ScratchJr-Prefix.pch";
INFOPLIST_FILE = "ScratchJrTests/ScratchJrTests-Info.plist";
PRODUCT_BUNDLE_IDENTIFIER = "PICO.${PRODUCT_NAME:rfc1034identifier}";
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE = "";
TEST_HOST = "$(BUNDLE_LOADER)";
WRAPPER_EXTENSION = xctest;
};
name = Release;
};
D92D0FA41C33381B00C573AD /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 97A526F2B60190BFC0BD3081 /* Pods-ScratchJr Free.debug.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = "Free-AppIcon";
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = "Free-LaunchImage";
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
DEVELOPMENT_TEAM = W7AR3WMP87;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "ScratchJr/ScratchJr-Prefix.pch";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
"COCOAPODS=1",
);
INFOPLIST_FILE = "$(SRCROOT)/../editions/free/Free-Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
PRODUCT_BUNDLE_IDENTIFIER = edu.mitmedialab.scratchjrfree;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE = "";
TARGETED_DEVICE_FAMILY = 2;
WRAPPER_EXTENSION = app;
};
name = Debug;
};
D92D0FA51C33381B00C573AD /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = F8E5189E06A85870C28705B8 /* Pods-ScratchJr Free.release.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = "Free-AppIcon";
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = "Free-LaunchImage";
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
DEVELOPMENT_TEAM = W7AR3WMP87;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "ScratchJr/ScratchJr-Prefix.pch";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
"COCOAPODS=1",
);
INFOPLIST_FILE = "$(SRCROOT)/../editions/free/Free-Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
PRODUCT_BUNDLE_IDENTIFIER = edu.mitmedialab.scratchjrfree;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE = "";
TARGETED_DEVICE_FAMILY = 2;
WRAPPER_EXTENSION = app;
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
204D80A018A4140600ECBB8B /* Build configuration list for PBXProject "ScratchJr" */ = {
isa = XCConfigurationList;
buildConfigurations = (
204D80CF18A4140600ECBB8B /* Debug */,
204D80D018A4140600ECBB8B /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
204D80D418A4140600ECBB8B /* Build configuration list for PBXNativeTarget "ScratchJrTests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
204D80D518A4140600ECBB8B /* Debug */,
204D80D618A4140600ECBB8B /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
D92D0FA31C33381B00C573AD /* Build configuration list for PBXNativeTarget "ScratchJr Free" */ = {
isa = XCConfigurationList;
buildConfigurations = (
D92D0FA41C33381B00C573AD /* Debug */,
D92D0FA51C33381B00C573AD /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 204D809D18A4140600ECBB8B /* Project object */;
}