diff --git a/Guide/Getting Started-template.markdown b/Guide/Getting Started-template.markdown index a6a4ad6..a88f0c5 100644 --- a/Guide/Getting Started-template.markdown +++ b/Guide/Getting Started-template.markdown @@ -1,13 +1,12 @@ -Getting Started Guide -============ +# Getting Started Guide We use CocoaPods. 1) Add the following to your Podfile: -```ruby -pod "Streamlyne-Cocoa-SDK", :git => 'http://git.streamlyne.co/streamlyne/sl-cocoa-sdk.git' -``` + + pod "Streamlyne-Cocoa-SDK", :git => 'git@github.com:Streamlyne/Cocoa-SDK.git' + 2) Copy `Streamlyne.xcdatamodeld` to your project and be sure to check on "Copy items into destination group's folder (if needed)". This is for Core Data, and cannot be installed with CocoaPods. diff --git a/Guide/Images/logo_mini.png b/Guide/Images/logo_mini.png new file mode 100644 index 0000000..c5d0762 Binary files /dev/null and b/Guide/Images/logo_mini.png differ diff --git a/README.md b/README.md index e8be44a..3ed9b20 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,6 @@ Streamlyne iOS SDK is used for developers who want to create applications that c ## Getting Started -* Download [Streamlyne iOS SDK](http://trac.streamlyne.co/SL-SDK). * Read [Getting Started Guide](docs/Guide/Getting Started.html). ## For Developers @@ -20,9 +19,10 @@ If you are a developer, then read below. ### Installation Use the following command in the installation directory of your choice. -```bash -# Clone Repository -git clone git@github.com:Streamlyne/Cocoa-SDK.git -# Install Dependencies -./install.sh -``` + # Clone Repository + git clone git@github.com:Streamlyne/Cocoa-SDK.git + # Install Dependencies + ./install.sh + +### Documentation +You can build the Documentation with Xcode, using the *Documentation* build target and selecting an iOS Simulator device. \ No newline at end of file diff --git a/Readme.markdown b/Readme.markdown deleted file mode 100644 index 2c699ae..0000000 --- a/Readme.markdown +++ /dev/null @@ -1,22 +0,0 @@ -Streamlyne iOS SDK is used for developers who want to create applications that connect to the [Streamlyne REST API](http://api.docs.streamlyne.co/). - -## Getting Started - -* Download [Streamlyne iOS SDK](http://trac.streamlyne.co/SL-SDK). -* Read [Getting Started Guide](docs/Guide/Getting Started.html). - -## For Developers -If you are a developer, Dawson Reid or Glavin Wiechert, then read below. - -### Installation -Use the following command in the installation directory of your choice. - - git clone sl-mgmt:/vol/git/sl-ios-sdk.git && cd sl-ios-sdk/ && ./install - - -Finally, a small table - -| header1 | header2 | header3 | -|---------|:-------:|--------:| -| normal | center | right | -| cell | cell | cell | \ No newline at end of file diff --git a/Streamlyne Cocoa SDK.xcodeproj/project.pbxproj b/Streamlyne Cocoa SDK.xcodeproj/project.pbxproj index d7d652b..17be15f 100644 --- a/Streamlyne Cocoa SDK.xcodeproj/project.pbxproj +++ b/Streamlyne Cocoa SDK.xcodeproj/project.pbxproj @@ -11,8 +11,8 @@ isa = PBXAggregateTarget; buildConfigurationList = 77F3D52E183E79A8000E9F15 /* Build configuration list for PBXAggregateTarget "Documentation" */; buildPhases = ( - 77F3D531183E7A37000E9F15 /* ShellScript */, - 7787C60C1845104800D91E20 /* ShellScript */, + 77F3D531183E7A37000E9F15 /* Generate Docs with AppleDoc */, + 7787C60C1845104800D91E20 /* Run Script */, ); dependencies = ( ); @@ -196,7 +196,8 @@ 7720FC3218369CA20092D39B /* Streamlyne-iOS-SDKTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Streamlyne-iOS-SDKTests-Info.plist"; sourceTree = ""; }; 7720FC3418369CA20092D39B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 7720FC3618369CA20092D39B /* Streamlyne_iOS_SDKTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = Streamlyne_iOS_SDKTests.m; sourceTree = ""; }; - 7772FEF8183EB6A500FA8B0E /* Readme.markdown */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Readme.markdown; sourceTree = ""; }; + 7783AFF419744B19000CAB0A /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README.md; sourceTree = ""; }; + 7783AFF519744B25000CAB0A /* install.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = install.sh; sourceTree = ""; }; 77AD7DE11842F6DC0053C02C /* SLAsset.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SLAsset.h; sourceTree = ""; }; 77AD7DE21842F6DC0053C02C /* SLAsset.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SLAsset.m; sourceTree = ""; }; 77AD7DE31842F6DC0053C02C /* SLOrganization.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SLOrganization.h; sourceTree = ""; }; @@ -284,8 +285,9 @@ 7720FC0E18369CA10092D39B = { isa = PBXGroup; children = ( + 7783AFF519744B25000CAB0A /* install.sh */, + 7783AFF419744B19000CAB0A /* README.md */, 77B4EA361840960B00435B97 /* Guide */, - 7772FEF8183EB6A500FA8B0E /* Readme.markdown */, 77AD7DDF1842F6DC0053C02C /* Common */, 7720FC1C18369CA20092D39B /* Streamlyne-iOS-SDK */, 7720FC3018369CA20092D39B /* Streamlyne-iOS-SDKTests */, @@ -696,18 +698,19 @@ shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; showEnvVarsInLog = 0; }; - 7787C60C1845104800D91E20 /* ShellScript */ = { + 7787C60C1845104800D91E20 /* Run Script */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); + name = "Run Script"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "echo ${BUILT_PRODUCTS_DIR}\nrm -rf ${BUILT_PRODUCTS_DIR}/libStreamlyne-iOS-SDK-universal.a\n\nlipo -create \"${BUILT_PRODUCTS_DIR}/../${CONFIGURATION}-iphonesimulator/libStreamlyne-iOS-SDK.a\" \\\n\"${BUILT_PRODUCTS_DIR}/libStreamlyne-iOS-SDK.a\" -output \\\n\"${BUILT_PRODUCTS_DIR}/libStreamlyne-iOS-SDK-universal.a\"\n"; + shellScript = "echo ${BUILT_PRODUCTS_DIR}\nrm -rf ${BUILT_PRODUCTS_DIR}/libStreamlyne-iOS-SDK-universal.a\n\n#lipo -create \"${BUILT_PRODUCTS_DIR}/../${CONFIGURATION}-iphonesimulator/libStreamlyne-iOS-SDK.a\" \\\n#\"${BUILT_PRODUCTS_DIR}/libStreamlyne-iOS-SDK.a\" -output \\\n#\"${BUILT_PRODUCTS_DIR}/libStreamlyne-iOS-SDK-universal.a\"\n"; }; 7787C60D1845117100D91E20 /* ShellScript */ = { isa = PBXShellScriptBuildPhase; @@ -722,18 +725,19 @@ shellPath = /bin/sh; shellScript = "##########################################\n#\n# c.f. http://stackoverflow.com/questions/3520977/build-fat-static-library-device-simulator-using-xcode-and-sdk-4\n#\n# Version 2.7\n#\n# Latest Change:\n# - Supports iPhone 5 / iPod Touch 5 (uses Apple's workaround to lipo bug)\n#\n# Purpose:\n# Automatically create a Universal static library for iPhone + iPad + iPhone Simulator from within XCode\n#\n# Author: Adam Martin - http://twitter.com/t_machine_org\n# Based on: original script from Eonil (main changes: Eonil's script WILL NOT WORK in Xcode GUI - it WILL CRASH YOUR COMPUTER)\n#\n\nset -e\nset -o pipefail\n\n#################[ Tests: helps workaround any future bugs in Xcode ]########\n#\nDEBUG_THIS_SCRIPT=\"false\"\n\nif [ $DEBUG_THIS_SCRIPT = \"true\" ]\nthen\necho \"########### TESTS #############\"\necho \"Use the following variables when debugging this script; note that they may change on recursions\"\necho \"BUILD_DIR = $BUILD_DIR\"\necho \"BUILD_ROOT = $BUILD_ROOT\"\necho \"CONFIGURATION_BUILD_DIR = $CONFIGURATION_BUILD_DIR\"\necho \"BUILT_PRODUCTS_DIR = $BUILT_PRODUCTS_DIR\"\necho \"CONFIGURATION_TEMP_DIR = $CONFIGURATION_TEMP_DIR\"\necho \"TARGET_BUILD_DIR = $TARGET_BUILD_DIR\"\nfi\n\n#####################[ part 1 ]##################\n# First, work out the BASESDK version number (NB: Apple ought to report this, but they hide it)\n# (incidental: searching for substrings in sh is a nightmare! Sob)\n\nSDK_VERSION=$(echo ${SDK_NAME} | grep -o '.\\{3\\}$')\n\n# Next, work out if we're in SIM or DEVICE\n\nif [ ${PLATFORM_NAME} = \"iphonesimulator\" ]\nthen\nOTHER_SDK_TO_BUILD=iphoneos${SDK_VERSION}\nelse\nOTHER_SDK_TO_BUILD=iphonesimulator${SDK_VERSION}\nfi\n\necho \"XCode has selected SDK: ${PLATFORM_NAME} with version: ${SDK_VERSION} (although back-targetting: ${IPHONEOS_DEPLOYMENT_TARGET})\"\necho \"...therefore, OTHER_SDK_TO_BUILD = ${OTHER_SDK_TO_BUILD}\"\n#\n#####################[ end of part 1 ]##################\n\n#####################[ part 2 ]##################\n#\n# IF this is the original invocation, invoke WHATEVER other builds are required\n#\n# Xcode is already building ONE target...\n#\n# ...but this is a LIBRARY, so Apple is wrong to set it to build just one.\n# ...we need to build ALL targets\n# ...we MUST NOT re-build the target that is ALREADY being built: Xcode WILL CRASH YOUR COMPUTER if you try this (infinite recursion!)\n#\n#\n# So: build ONLY the missing platforms/configurations.\n\nif [ \"true\" == ${ALREADYINVOKED:-false} ]\nthen\necho \"RECURSION: I am NOT the root invocation, so I'm NOT going to recurse\"\nelse\n# CRITICAL:\n# Prevent infinite recursion (Xcode sucks)\nexport ALREADYINVOKED=\"true\"\n\necho \"RECURSION: I am the root ... recursing all missing build targets NOW...\"\necho \"RECURSION: ...about to invoke: xcodebuild -configuration \\\"${CONFIGURATION}\\\" -project \\\"${PROJECT_NAME}.xcodeproj\\\" -target \\\"${TARGET_NAME}\\\" -sdk \\\"${OTHER_SDK_TO_BUILD}\\\" ${ACTION} RUN_CLANG_STATIC_ANALYZER=NO\" BUILD_DIR=\\\"${BUILD_DIR}\\\" BUILD_ROOT=\\\"${BUILD_ROOT}\\\" SYMROOT=\\\"${SYMROOT}\\\"\n\nxcodebuild -configuration \"${CONFIGURATION}\" -project \"${PROJECT_NAME}.xcodeproj\" -target \"${TARGET_NAME}\" -sdk \"${OTHER_SDK_TO_BUILD}\" ${ACTION} RUN_CLANG_STATIC_ANALYZER=NO BUILD_DIR=\"${BUILD_DIR}\" BUILD_ROOT=\"${BUILD_ROOT}\" SYMROOT=\"${SYMROOT}\"\n\nACTION=\"build\"\n\n#Merge all platform binaries as a fat binary for each configurations.\n\n# Calculate where the (multiple) built files are coming from:\nCURRENTCONFIG_DEVICE_DIR=${SYMROOT}/${CONFIGURATION}-iphoneos\nCURRENTCONFIG_SIMULATOR_DIR=${SYMROOT}/${CONFIGURATION}-iphonesimulator\n\necho \"Taking device build from: ${CURRENTCONFIG_DEVICE_DIR}\"\necho \"Taking simulator build from: ${CURRENTCONFIG_SIMULATOR_DIR}\"\n\nCREATING_UNIVERSAL_DIR=${SYMROOT}/${CONFIGURATION}-universal\necho \"...I will output a universal build to: ${CREATING_UNIVERSAL_DIR}\"\n\n# ... remove the products of previous runs of this script\n# NB: this directory is ONLY created by this script - it should be safe to delete!\n\nrm -rf \"${CREATING_UNIVERSAL_DIR}\"\nmkdir \"${CREATING_UNIVERSAL_DIR}\"\n\n#\necho \"lipo: for current configuration (${CONFIGURATION}) creating output file: ${CREATING_UNIVERSAL_DIR}/${EXECUTABLE_NAME}\"\nxcrun -sdk iphoneos lipo -create -output \"${CREATING_UNIVERSAL_DIR}/${EXECUTABLE_NAME}\" \"${CURRENTCONFIG_DEVICE_DIR}/${EXECUTABLE_NAME}\" \"${CURRENTCONFIG_SIMULATOR_DIR}/${EXECUTABLE_NAME}\"\n\n#########\n#\n# Added: StackOverflow suggestion to also copy \"include\" files\n# (untested, but should work OK)\n#\necho \"Fetching headers from ${PUBLIC_HEADERS_FOLDER_PATH}\"\necho \" (if you embed your library project in another project, you will need to add\"\necho \" a \"User Search Headers\" build setting of: (NB INCLUDE THE DOUBLE QUOTES BELOW!)\"\necho ' \"$(TARGET_BUILD_DIR)/usr/local/include/\"'\nif [ -d \"${CURRENTCONFIG_DEVICE_DIR}${PUBLIC_HEADERS_FOLDER_PATH}\" ]\nthen\nmkdir -p \"${CREATING_UNIVERSAL_DIR}${PUBLIC_HEADERS_FOLDER_PATH}\"\n# * needs to be outside the double quotes?\ncp -r \"${CURRENTCONFIG_DEVICE_DIR}${PUBLIC_HEADERS_FOLDER_PATH}\"* \"${CREATING_UNIVERSAL_DIR}${PUBLIC_HEADERS_FOLDER_PATH}\"\nfi\nfi"; }; - 77F3D531183E7A37000E9F15 /* ShellScript */ = { + 77F3D531183E7A37000E9F15 /* Generate Docs with AppleDoc */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); + name = "Generate Docs with AppleDoc"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "#appledoc Xcode script\n# Start constants\ncompany=\"Streamlyne\";\ncompanyID=\"com.Streamlyne\";\ncompanyURL=\"http://streamlyne.co\";\ntarget=\"iphoneos\";\n#target=\"macosx\";\noutputPath=\"${PROJECT_DIR}/docs\";\n# End constants\n/usr/local/bin/appledoc \\\n--project-name \"${PROJECT_NAME}\" \\\n--project-company \"${company}\" \\\n--company-id \"${companyID}\" \\\n--docset-atom-filename \"${company}.atom\" \\\n--docset-feed-url \"${companyURL}/${company}/%DOCSETATOMFILENAME\" \\\n--docset-package-url \"${companyURL}/${company}/%DOCSETPACKAGEFILENAME\" \\\n--docset-fallback-url \"${companyURL}/${company}\" \\\n--output \"${outputPath}\" \\\n--publish-docset \\\n--docset-platform-family \"${target}\" \\\n--logformat xcode \\\n--keep-intermediate-files \\\n--no-repeat-first-par \\\n--no-warn-invalid-crossref \\\n--exit-threshold 2 \\\n--include \"${PROJECT_DIR}/Guide/Images\" \\\n--include \"${PROJECT_DIR}/Guide\" \\\n--ignore \"${PROJECT_DIR}/Pods\" \\\n--index-desc \"${PROJECT_DIR}/Readme.markdown\" \\\n\"${PROJECT_DIR}\""; + shellScript = "#appledoc Xcode script\n# Start constants\ncompany=\"Streamlyne\";\ncompanyID=\"com.Streamlyne\";\ncompanyURL=\"http://streamlyne.co\";\ntarget=\"iphoneos\";\n#target=\"macosx\";\noutputPath=\"${PROJECT_DIR}/docs\";\n# End constants\n/usr/local/bin/appledoc \\\n--project-name \"${PROJECT_NAME}\" \\\n--project-company \"${company}\" \\\n--company-id \"${companyID}\" \\\n--docset-atom-filename \"${company}.atom\" \\\n--docset-feed-url \"${companyURL}/${company}/%DOCSETATOMFILENAME\" \\\n--docset-package-url \"${companyURL}/${company}/%DOCSETPACKAGEFILENAME\" \\\n--docset-fallback-url \"${companyURL}/${company}\" \\\n--output \"${outputPath}\" \\\n--publish-docset \\\n--docset-platform-family \"${target}\" \\\n--logformat xcode \\\n--keep-intermediate-files \\\n--no-repeat-first-par \\\n--no-warn-invalid-crossref \\\n--exit-threshold 2 \\\n--include \"${PROJECT_DIR}/Guide/Images\" \\\n--include \"${PROJECT_DIR}/Guide\" \\\n--ignore \"${PROJECT_DIR}/Pods\" \\\n--index-desc \"${PROJECT_DIR}/README.md\" \\\n\"${PROJECT_DIR}\""; }; /* End PBXShellScriptBuildPhase section */