All Projects → openbakery → Gradle Xcodeplugin

openbakery / Gradle Xcodeplugin

Licence: apache-2.0
gradle plugin for building Xcode Projects for iOS, watchOS, macOS or tvOS

Programming Languages

groovy
2714 projects

Projects that are alternatives of or similar to Gradle Xcodeplugin

Autoarchive
一个基于Jenkins的iOS/Android自动构建系统,它实现了最大程度的自动化,让你的iOS自动打包,Android自动打包流程变得更加高效。此项目包含了各种实现细节的讲解说明,你能够使用它解决大多数跟客户端构建/分发相关的问题,并将这种能力进行开放,提高研发效率。
Stars: ✭ 248 (-42.33%)
Mutual labels:  gradle, xcode
Gradle In Action Source
Source code for the Manning book "Gradle in Action"
Stars: ✭ 483 (+12.33%)
Mutual labels:  gradle, build-automation
Dryrun
☁️ Try the demo project of any Android Library
Stars: ✭ 3,845 (+794.19%)
Mutual labels:  gradle
Themer
themer is inspired by trevordmiller/nova and chriskempson/base16.
Stars: ✭ 4,483 (+942.56%)
Mutual labels:  xcode
Gradientcircularprogress
Customizable progress indicator library in Swift
Stars: ✭ 407 (-5.35%)
Mutual labels:  xcode
Swiftuikitview
Easily use UIKit views in your SwiftUI applications. Create Xcode Previews for UIView elements
Stars: ✭ 398 (-7.44%)
Mutual labels:  xcode
Robust
Robust is an Android HotFix solution with high compatibility and high stability. Robust can fix bugs immediately without a reboot.
Stars: ✭ 4,125 (+859.3%)
Mutual labels:  gradle
Spring Boot Angular2
spring boot backend, angular2 frontend with webpack, typescript, sass, bootstrap4, karma, jasmine
Stars: ✭ 396 (-7.91%)
Mutual labels:  gradle
Javafx Gradle Plugin
Gradle plugin for JavaFX
Stars: ✭ 425 (-1.16%)
Mutual labels:  gradle
Resizer
An image resizing library for Android
Stars: ✭ 406 (-5.58%)
Mutual labels:  gradle
Agimagepickercontroller
Stars: ✭ 424 (-1.4%)
Mutual labels:  xcode
Messenger Ios Chat Swift Firestore
Messenger Clone - Real-time iOS Chat with Firebase Firestore written in Swift
Stars: ✭ 405 (-5.81%)
Mutual labels:  xcode
Xcode Defaults
Awesome and useful Xcode defaults
Stars: ✭ 399 (-7.21%)
Mutual labels:  xcode
Talaiot
Simple and extensible plugin to track task times in your Gradle Project.
Stars: ✭ 415 (-3.49%)
Mutual labels:  gradle
Gradle Static Analysis Plugin
Easy setup of static analysis tools for Android and Java projects.
Stars: ✭ 398 (-7.44%)
Mutual labels:  gradle
Mylinearlayout
MyLayout is a powerful iOS UI framework implemented by Objective-C. It integrates the functions with Android Layout,iOS AutoLayout,SizeClass, HTML CSS float and flexbox and bootstrap. So you can use LinearLayout,RelativeLayout,FrameLayout,TableLayout,FlowLayout,FloatLayout,PathLayout,GridLayout,LayoutSizeClass to build your App 自动布局 UIView UITab…
Stars: ✭ 4,152 (+865.58%)
Mutual labels:  xcode
Drawer Behavior
Drawer behavior is a library that provide an extra behavior on drawer, such as, move view or scaling view's height while drawer on slide.
Stars: ✭ 394 (-8.37%)
Mutual labels:  gradle
Require
Require optional values to be non-nil, or crash gracefully
Stars: ✭ 405 (-5.81%)
Mutual labels:  xcode
Wwdc2016 Xcode Color Scheme
A color scheme for Xcode based on the WWDC 2016 invitation.
Stars: ✭ 408 (-5.12%)
Mutual labels:  xcode
Gradle Plugin User Guide Chinese Verision
Gradle Plugin User Guide 中文翻译
Stars: ✭ 426 (-0.93%)
Mutual labels:  gradle

gradle-xcodePlugin

Build Status Coverage Status

Join the gradle-xcode-plugin Slack channel for questions and discussions. Send me a mail ([email protected]) and I will send you an invitation

The gradle xcode plugin (gxp) makes it easier to build Xcode projects by specifying the build settings in a single configuration file. The goal is to keep the build file as simple as possible, but also enable a great flexibility for the build.

The gxp uses the Apple command line tools (like xcodebuild) to perform the build.

Here a brief overview of the features:

  • Build iOS, watchOS, tvOS and Mac projects
  • Override sign settings for builds
  • Perform unit tests
  • Support for multiple Xcodes (on one machine)
  • Cocoapods support
  • Carthage support
  • Appledoc support
  • Code coverage support (using gcovr or using CoverageReport )
  • OCLint

Requirements

Xcode 7 or greater

  • Gradle 2.14 or greater
  • Java 1.6 or greater

Current stable version is 0.20.1

Documentation

Usage

Create a build.gradle file and place it in the same directory where xcodeproj file lies.

Here the minimal content you need in your build.gradle file:

plugins {
  id "org.openbakery.xcode-plugin" version "0.20.1"
}

xcodebuild {
  scheme = 'MY-SCHEMA'
  target = 'MY-TARGET'
}

You can also use the version that is deployed the repository on openbakery.org with the following build.gradle file configuration:

buildscript {
  repositories {
    maven {
      url('http://repository.openbakery.org/')
    }
  mavenCentral()
  }

  dependencies {
    classpath "org.openbakery:xcode-plugin:0.20.+"
  }
}

apply plugin: "org.openbakery.xcode-plugin"

Current develop version

When using the openbakery.org repository you can also get the latest develop version by including develop into the version pattern. e.g.:

classpath "org.openbakery:xcode-plugin:0.20.1.develop.+"

The develop version contains all the changes from the develop branch, where all the fixes and feature are implemented. The development version is deployed automatically when all the projects unit tests are successful, and also the if the example projects build.

Example

You find example projects in example/ with a working build.gradle file. After you have fetched the example go to the example/iOS/Example directory and you build the project different targets:

  • Build with gradle xcodebuild
  • Run the unit tests with gradle test
  • Perform a device build and upload it to App Center with gradle integration. Here you need to specify your sign settings first (see Signing ). Open the build.gradle file an follow the instructions.
  • Perform an appstore build with gradle appstore. (Also the sign settings are needed).

Collaborate

I'm always happy to receive pull requests with new features and if you send a pull request please consider the following things:

  • Use the develop branch for pull requests, because all the new stuff is implemented in the develop branch and also pull requests are always merge into develop
  • Use Tabs instead of spaces.
  • Make sure that all unit tests are working before you send the pull request. Just run 'gradle test'
  • I urge you to write unit tests.
  • For unit test please use the spock framework for mocking. I want to remove the old gmock framework and port the old tests to use spock.
  • Pull requests that contains new features or fixes but without any unit tests will NOT be merged.

License

This project is licensed under the terms of the Apache license. See the LICENSE file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].