CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. It has over eighteen thousand libraries and can help you scale your projects elegantly. Cocoapods can be used in your Codename One project to include native iOS libraries without having to go through the hassle of bundling the actual library into your project. Rather than bundling .h and .a files in your ios/native directory, you can specify which "pods" your app uses via the
ios.pods build hint. (There are other build hints also if you need more advanced features).
To include the AFNetworking library in your app use the build hint:
To include the AFNetworking version 3.0.x library in your app use the build hint:
ios.pods=AFNetworking ~> 3.0
Including Multiple Pods
Multiple pods can be separated by either commas or semi-colons in the value of the
ios.pods build hint. E.g. To include GoogleMaps and AFNetworking, you could:
ios.pods=AFNetworking ~> 3.0,GoogleMaps
ios.pods.platform : The minimum platform to target. In some cases, Cocoapods require functionality that is not in older version of iOS. For example, the GoogleMaps pod requires iOS 7.0 or higher, so you would need to add the
ios.pods.platform=7.0 build hint.
ios.pods.sources : Some pods require that you specify a URL for the source of the pod spec. This may be optional if the spec is hosted in the central CocoaPods source (
Converting PodFile To Build Hints
Most documentation for Cocoapods "pods" provide instructions on what you need to add to your Xcode project’s PodFile. Here is an example from the GoogleMaps cocoapod to show you how a PodFile can be converted into equivalent build hints in a Codename One project.
The GoogleMaps cocoapod directs you to add the following to your PodFile:
platform :ios, '7.0'
This would translate to the following build hints in your Codename One project:
| || Note that the |
ios.pods.sources directive is optional