BoxSDK

Platforms License Swift Package Manager Carthage compatible CocoaPods compatible Build Status Coverage Status

Box Swift SDK

Requirements

  • iOS 8.0+ / Mac OS X 10.10+ / tvOS 9.0+ / watchOS 2.0+
  • Xcode 10.0+

Installation

Dependency Managers

CocoaPods [CocoaPods](http://cocoapods.org) is a dependency manager for Cocoa projects. You can install it with the following command: “`bash $ gem install cocoapods ”` To integrate BoxSDK into your Xcode project using CocoaPods, specify it in your `Podfile`: “`ruby source ‘https://github.com/CocoaPods/Specs.git’ platform :ios, ‘8.0’ use_frameworks! pod ‘BoxSDK’, ‘~> 0.0.1’ ”` Then, run the following command: “`bash $ pod install ”`
Carthage [Carthage](https://github.com/Carthage/Carthage) is a decentralized dependency manager that automates the process of adding frameworks to your Cocoa application. You can install Carthage with [Homebrew](http://brew.sh/) using the following command: “`bash $ brew update $ brew install carthage ”` To integrate BoxSDK into your Xcode project using Carthage, specify it in your `Cartfile`: “`ogdl github "box/box-swift-sdk” ~> 0.0.1 “`
Swift Package Manager To use BoxSDK as a [Swift Package Manager](https://swift.org/package-manager/) package just add the following in your Package.swift file. ”` swift // swift-tools-version:4.2 import PackageDescription let package = Package( name: “HelloBoxSDK”, dependencies: [ .package(url: “https://github.com/box/box-swift-sdk.git”, .upToNextMajor(from: “0.0.1”)) ], targets: [ .target(name: “HelloBoxSDK”, dependencies: [“BoxSDK”]) ] ) “`

Manually

If you prefer not to use either of the aforementioned dependency managers, you can integrate BoxSDK into your project manually.

Git Submodules

- Open up Terminal, `cd` into your top-level project directory, and run the following command "if” your project is not initialized as a git repository: “`bash $ git init ”` - Add BoxSDK as a git [submodule](http://git-scm.com/docs/git-submodule) by running the following command: “`bash $ git submodule add https://github.com/box/box-swift-sdk.git $ git submodule update –init –recursive ”` - Open the new `BoxSDK` folder, and drag the `BoxSDK.xcodeproj` into the Project Navigator of your application’s Xcode project. > It should appear nested underneath your application’s blue project icon. Whether it is above or below all the other Xcode groups does not matter. - Select the `BoxSDK.xcodeproj` in the Project Navigator and verify the deployment target matches that of your application target. - Next, select your application project in the Project Navigator (blue project icon) to navigate to the target configuration window and select the application target under the “Targets” heading in the sidebar. - In the tab bar at the top of that window, open the “General” panel. - Click on the `+` button under the “Embedded Binaries” section. - You will see two different `BoxSDK.xcodeproj` folders each with two different versions of the `BoxSDK.framework` nested inside a `Products` folder. > It does not matter which `Products` folder you choose from. - Select the `BoxSDK.framework`. - And that’s it! > The `BoxSDK.framework` is automagically added as a target dependency, linked framework and embedded framework in a copy files build phase which is all you need to build on the simulator and a device.

Embedded Binaries

- Download the latest release from https://github.com/box/box-swift-sdk/releases - Next, select your application project in the Project Navigator (blue project icon) to navigate to the target configuration window and select the application target under the “Targets” heading in the sidebar. - In the tab bar at the top of that window, open the “General” panel. - Click on the `+` button under the “Embedded Binaries” section. - Add the downloaded `BoxSDK.framework`. - And that’s it!

Usage

Please see the SDK documentation for more information.

Contributing

Issues and pull requests are welcome! Please review the Contributing Guidelines.

Author

@box

License

BoxSDK is released under the Apache 2.0 license. See LICENSE for details.

The SDK uses some third-party libraries; please see LICENSES-THIRD-PARTY.txt for the licenses of all included libraries.