In this article:
- Carthage — the recommended way
- Cocoapods — the not so recommended way
- Next steps
In order to use Flint you need to build the framework and add it and its dependency to your project.
If you’re not ready to start using Flint in your own projects, you can check out the FlintDemo iOS sample project with support for Handoff, Siri Prediction & Siri Shortcuts, as well as the Flint UI debug feature browser, timeline browser and so on.
Carthage — the recommended way
The easiest way to use Flint in your own project is via Carthage. You add the dependency to your
Cartfile like this:
github "MontanaFlossCo/Flint" ~> 1.0.9
Note: We are specifying tags rather than semantic versions to use for now, as currently we are not at the point where we can guarantee no API breakage between these early access 1.0.x releases. Once we hit the final 1.0 API we’ll be semver friendly!
carthage bootstrap to build it for all platforms. For faster builds you can limit to one platform and use caching to avoid rebuilding if there are no changes to the version you already have, e.g.:
carthage bootstrap --platform iOS --cache-builds
Adding the frameworks to your project
Once you have built the frameworks, you’ll need to add them to your project.
- Drag the FlintCore.framework from
./Carthage/Build/iOS(or whatever platform folder your project requires) onto your “Linked Frameworks & Libraries” section of your app target’s General tab in Xcode
- If you need
FlintUIfor iOS then also do the same for that framework
- Verify on your Build Phases tab that those frameworks are listed in the “Link Binary With Libraries” section
- Ensure that your main app target is set up properly for Carthage’s
copy-frameworksbuild phase, so that it correctly copies the frameworks
FlintCore, and if you’re using it,
FlintUI. Add a
Run Scriptbuild phase that runs the command
carthage copy-frameworks, and add each Framework as an input file e.g.
$(SRCROOT)/Carthage/Build/iOS/FlintCore.frameworkand as an output file such as
$(SRCROOT)/Carthage/Build/iOS/FlintCore.frameworkso it only processes modified frameworks for quicker build times.
Cocoapods — the not so recommended way
You can also use Cocoapods if your project already requires this. Add the dependency to your
pod 'FlintCore', '~> 1.0.9'
pod install to install the dependency into your project.