Build File

Build file for Android and iOS compilation

Specify the following in the build file

  • Android specific settings
  • iOS specific settings
  • SPM 3rd party packages

Mandatory attributes

Section

Attribute

Description

sign
necessary for creating iOS binaries

provision-profile:

Your iOS mobile provision file

certificate:

Your iOS certificate

Interesting attributes

Section

Attribute

Description

android

build-type: Debug or Release

Sets the Debug or Release mode. Always set to Release when deploying for consumption.

The Build file with sample entries

# Build file with examples
spm:
  - url: https://github.com/nicklockwood/Expression
    from: 0.13.1
    path: 
    search-paths: []
    linked-libs: []

# Search paths for 
search-paths: []
linked-libs: [Expression] 

# IOS specific settings
ios:
  name: m1
  id: com.scade.m1
  device-family: iphone # iphone, ipad or universal
  supported-interface-orientations: ['portrait'] # portrait, upside_down, landscape_left or landscape_right
  supported-interface-orientationsiPad: ['portrait']
  entitlements-file: 
  app-delegate-file:
  simulator:
    os: 12.1
    output: m1/.build/ios-simulator
    extra-args:
    search-paths: []
    linked-libs: []
  device: 
    os: 12.1
    output: m1/.build/ios-device
    extra-args: 
    search-paths: []
    linked-libs: []
  mac:
    os: 10.11
    output: m1/.build/scade-simulator
    extra-args: 
    search-paths: []
    linked-libs: []
  # Please specify your mobile provising file and your security certifcate
  sign:
    provision-profile: /Users/flangel/certs/FrankBlackDeviceDev.mobileprovision
    certificate: /Users/flangel/certs/FrankBlackDeviceDevPrivate2.p12
    beta-reports-active: true
  icons: 
    app-iphone:
      2x: ./res/icon1.png
      3x:
    app-ipad:
      2x:
      3x:
    app-ipad-pro:
      2x:
      3x:
  plist: 
    - key: CFBundleShortVersionString
      type: string  # string, bool, int, list or dict
      value: 1.0
    - key: CFBundleVersion
      type: string
      value: 1
    - key: NSLocationWhenInUseUsageDescription
      type: string
      value: 
    - key: NSCameraUsageDescription
      value: Take pictures from camera
    - key: NSPhotoLibraryUsageDescription
      type: string
      value: Choose a photo from your library
    - key: NSLocationWhenInUseUsageDescription
      type: string
      value: Description
    - key: NSLocationAlwaysAndWhenInUseUsageDescription
      type: string
      value: Description
    - key: NSLocationAlwaysUsageDescription
      type: string
      value: Description

# Android specific settings
android:
  name: m1
  id: com.scade.m1
  version-name: 1.0.0
  version-code: 1
  build-type: Debug
  key-store-properties:
  google-api-key: 
  manifest-file:
  permissions: []
  armeabi-v7a:
    output: m1/.build/android-armeabi-v7a
    extra-args:
    search-paths: []
    linked-libs: []
  x86:
    output: m1/.build/android-x86
    extra-args:
    search-paths: []
    linked-libs: []
  intent-filters:
    - action:
      scheme:
      categories: [] 
  icons:
    mdpi: ./res/icon1.png
    hdpi:
    xhdpi: 
    xxhdpi: