Release Candidate for Titanium SDK 5.5.0 and Appcelerator CLI 5.5.0

Today, we published RC Releases for Titanium SDK 5.5.0 and Appcelerator CLI 5.5.0.

We’d like to thank the following Appcelerator Community members who contributed to this release as well as those who have tested the beta version.

  • Vladimir Trifonov for resolving CLI-1022 – If you set access to an Arrow connector, “Successfully set access for to null.” will appear
  • Michael Gangolf for his work on android: add setRequestHeaders({});, docs, add getter, change docu, adding parameter, and updating documentation.

The primary focus of this release is support for iOS 10 and Xcode 8 including:

  • iOS10: Support new CoreSpotlight APIs
  • iOS10: Support RefreshControl in Ti.UI.ScrollView
  • iOS10: Expose new Ti.UI.Pasteboard APIs
  • iOS10: Support for new WatchConnectivity features
  • iOS10: Expose new visual effects on Ti.UI.iOS.BlurView
  • iOS10: Support for searching indexed searchable items using the CSSearchQuery API
  • This release supports Apple’s Xcode from a minimum of 7.3.x to the maximum version of 8.0.x
  • Team id is now required in tiapp.xml when building an app with a watch extension and Xcode 8. Add the <team-id> to the <ios> section of your tiapp.xml:
        <!-- more iOS specific keys -->
  • Projects will set “SWIFT_VERSION” to a value of “3.0”
  • Migrated the watchOS template to adopt the new Swift 3 syntax
  • Minimum iOS SDK version is set to 8.0 by default if not explicitly set in the tiapp.xml when compiling using Xcode 8. This behavior is following the one Xcode 8 provides. However, you can still change your minimum iOS version to 7.1 in the tiapp.xml.

Migrate your apps to iOS 10

Although our SDK and CLI take care of the most of the iOS 10 changes, there are also some privacy changes that need to be done by the developer. In detail, these include the requirement of the following keys in the plist of your tiapp.xml:

  • NSContactsUsageDescription: If you use the Ti.Contacts API to access contacts from the address book
  • NSCameraUsageDescription: If you use the Ti.Media.showCamera API to capture photos and videos
  • NSCalendarsUsageDescription: If you use the Ti.Calendar API to access device calendars
  • NSPhotoLibraryUsageDescription: If you use the Ti.Media.openPhotoGallery API to access the photo gallery or Ti.Media.showCamera API to save photos
  • NSMicrophoneUsageDescription: If you use the Ti.Media.AudioRecorder API to record audio or Ti.Media.showCamera to record videos


            <string>Can we use to your contacts?</string>
            <string>Can we use your camera?</string>
            <string>Can we use your calendar?</string>
            <string>Can we save to your library?</string>
            <string>Can we use your microphone?</string>

If you test your application on iOS 10, we will log an error in case you don’t have the permissions included, so you know when an API requires a certain permission. On devices earlier than iOS 10, the privacy-keys are not required, but recommended. So adding them does not have a bad side-effect for older devices.

Release Notes

These releases include 21 bug fixes, 2 improvements and 6 iOS 10 new features. For a more detailed overview, known issues and closed tickets see the following links:

Update Titanium SDK

To update the Titanium SDK from the command line:

[appc] ti sdk install --branch 5_5_X 5.5.0.v20160831100821

To roll back:

[appc] ti sdk select latest

Update Appcelerator CLI

The Appcelerator CLI Core Package has been updated, however the Appcelerator CLI install remains v4.2.7.

To update from the command line:

[sudo] npm install -g appcelerator
appc use 5.5.0-5

To roll back:

[sudo] npm install -g appcelerator
appc use latest

Report bugs

If you run into any issues that seem related to the updates, please report them on JIRA.

First, check if it’s a known issue you can watch. If you can’t find an existing ticket, then create one in the Appcelerator Community (AC) project and add as much relevant information as you can, including the release version you are using.

You can leave general comments as a reply to this blog post.