Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Objective-C client library for SimpleGeo

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 Documentation
Octocat-spinner-32 Project
Octocat-spinner-32 scripts
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .gitmodules
Octocat-spinner-32 CHANGELOG.md
Octocat-spinner-32 LICENSE.md
Octocat-spinner-32 README.md
Octocat-spinner-32 RELEASE.md
README.md

SimpleGeo.framework

SimpleGeo.framework is an Objective-C client library for the SimpleGeo API, suitable for use in both Mac OS X and iOS applications.

Downloading the Framework

SimpleGeo.framework is available as a branch suitable for use as a git submodule. In either case, you'll want to place the framework in a subdirectory beneath your app.

Here's an example of adding SimpleGeo.framework as a submodule:

$ git submodule add -b framework-ios git://github.com/simplegeo/SimpleGeo.framework.git Resources/SimpleGeo.framework

You may also choose to simply download the ios-framework branch and drag the SimpleGeo.framework folder into your Xcode project:

$ git clone -b framework-ios git://github.com/simplegeo/SimpleGeo.framework.git Resources/SimpleGeo.framework

Embedding in an iOS Application

Once SimpleGeo.framework has been placed in a subdirectory beneath your app, drag it into your Xcode project; it will show up as a linked framework.

Add the following additional frameworks to your project by clicking on your Target, choosing the "Build Phases" tab, and using the + button at the bottom of the "Linked Libraries" section:

  • Foundation
  • UIKit
  • CoreGraphics
  • CFNetwork
  • SystemConfiguration
  • MobileCoreServices
  • CoreLocation
  • MapKit
  • libz
  • SimpleGeo (if it's not already present)

SimpleGeo-iOS is an example of an iOS application built using SimpleGeo.framework.

Embedding in a Cocoa Application

Once SimpleGeo.framework has been placed in a subdirectory beneath your app, drag it into your Xcode project; it will show up as a linked framework.

Add the following additional frameworks to your project by clicking on your Target, choosing the "Build Phases" tab, and using the + button at the bottom of the "Linked Libraries" section:

  • CoreServices
  • SystemConfiguration
  • libz
  • SimpleGeo (if it's not already present)

SimpleGeo-Mac is an example of a Cocoa application built using SimpleGeo.framework.

Getting Started

If you'd like help getting started with some basic tutorials, visit our Objective-C tutorials page.

Working from Source

You may download and modify the SimpleGeo.framework source code to meet custom needs. If you make edits that may be appreciated by others, please submit a GitHub pull request.

Downloading Dependencies

SimpleGeo.framework depends on the following codebases:

An included script can get you up and running quickly. To download and update dependencies, simply run:

./Scripts/update-dependencies

The script does the following:

  • Downloads GHUnit.framework into the framework's Project/Mac/Tests/Resources/ directory
  • Runs $ git submodule update --init to download and update the SGObjCHTTP submodule.
  • Runs $ git submodule update --init for SGObjCHTTP sub-dependencies.

Building for iOS

To generate a usable SimpleGeo.framework for iOS from the command-line:

$ cd Project/iOS
$ make

The resulting framework will appear in Project/iOS/Build/Release-iphoneos.

Building from the command-line will create an über-Universal framework, built for armv6 and armv7 devices as well as the iOS Simulator.

Building for OS X

To generate a usable SimpleGeo.framework for OS X from the command-line:

$ cd Project/Mac
$ make

The resulting framework will appear in Project/Build/Release.

Docs

To generate html docs and install a handy Xcode docset:

$ cd Documentation
$ make

Support

SimpleGeo.framework is fully supported by SimpleGeo. If you have any questions, comments, or bug reports, please contact us via our Google Groups support page.

Something went wrong with that request. Please try again.