Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: fix icons and splash screens link

...

Table of Content Zone
locationtop

About This Release

This is a general availability (GA) version of Titanium SDK 5.0.0.

Note that this release includes feature and behavior changes. See Notice of Feature and Behavior Changes for details.

This Release introduces a number of new features. See New Features for a summary of new features in this release. Notable issues include support for Android 6.0 (Marshmallow), iOS 9.0, watchOS 2 and direct API access for Windows.

This Release includes over 150 bug fixes and improvements, see the full list of issues that were addressed in Release 5.0.0.

As of this release, Titanium SDK 4.x will not be supported one calendar year from 5.0.0.GA's release date. See Axway Appcelerator Deprecation Policy and Nominal Lifetimes documents for details.

Android Support

This Release includes support to build your application with the Android 6.0 (Marshmallow) SDK.

Note there is a known issue where the application will crash if the camera is used

CLI 5.0.0

This Release coincides with the release of Appcelerator CLI 5.0.0, which includes Alloy 1.7.8 and Titanium CLI 5.0.3.

For more details, see the CLI Release Notes.

iOS and watchOS Support

This Release includes support for iOS 9.0, watchOS 2 and Xcode 7.0.

Note there is a known issue that the SDK can only detect one iOS 9.0 device when multiple devices are plugged in.

Note that this Release only supports watchOS 2 applications built with Xcode; iOS app extensions and watchOS 1 applications are not supported in this Release.

To get started with watchOS 2, see:

Studio 4.3.0

This Release coincides with the release of Studio 4.3.0, which includes support for building, running and packaging watchOS 2 applications built in Xcode.

For more details, see the Studio Release Notes.

Notice of Feature and Behavior Changes

Android Platform

Cookie Expiration

Due to the switch from the Apache HTTP Client library to the java.net package for network support, you can no longer set the expiration date of the cookie using theexpiryDate property.

Instead, set the maxAge property of the Cookie object on the Android platform.

iOS Platform

Application Transport Security

Starting with iOS 9.0, Apple introduced new security guidelines for network connections, which requires TLS 1.2 or greater, and specific cipher criteria. If a connection does not meet the guidelines, Apple will refuse the connection and an error will be returned in the network response.

Because of the strict guidelines, the Titanium SDK disables ATS by default. If you wish to re-enable ATS, add the NSAppTransportSecurity dict to the ios plistsection of the tiapp.xml file, then add the NSAllowArbitraryLoads key and set it to true.

Note that you may need to whitelist URLs in order to connect to the web services.

For more information, see the iOS 9 Application Note in the Titanium.Network API reference.

Contacts

Starting with iOS 9.0, to get the ID of a Titanium.Contacts.Person object use the identifier property.

Prior to iOS 9.0, use the recordId property.

Icons and Launch Images

Icons (app, settings and spotlight) and launch images are now added to the Asset Catalog. Due to the change, you can no longer reference these assets from the filesystem. For example, you can no longer set the backgroundImage property to a launch image.

Also all app icons are required to be added to the project in order to build an iOS application. If any application icon is missing, the build will fail. The build will not fail if you omit spotlight or settings icons.

All icons must be square, that is, the height and width must be equal, and in PNG format. If an icon does not meet the requirements, it will be ignored during the build process.

You are recommended to add a 1024 x 1024 PNG image, named DefaultIcon.png placed in the project's root folder, which is used to generate all or only omitted icons for the project. New Titanium projects will have the DefaultIcon.png file.

IPv6 DNS64/NAT64 Compatibility

If you submit an iOS 9 application to the iTunes App Store, your application must be compatible with IPv6 DNS64/NAT64 networks as part of App Store submissions.

Apple recommends not to include hard-coded IPv4 address literals in your application, for example, 127.0.0.1, and to test the application with an IPv6 DNS64/NAT64 network.

For more information, see the iOS 9 Application Note in the Titanium.Network API reference.

ListView Edit Actions

The ListView rowAction event was renamed to the editaction event, which is fired when a user interacts with a custom edit action in a list item. Update your application to listen for the editaction event.

Windows Platform

Windows Publisher ID

Starting with this Release, to build Windows Phone or Store applications with the CLI, add the --win-publisher-id <WINDOW_PUBLISHER_ID> option to appc runcommand. If prompting is turned on, the CLI will prompt you for your Windows Publisher ID. You may also set the Titanium CLI configuration variablewindows.publisherId rather than using the command-line option.

If you are using Studio, set the Windows Publisher ID in Studio Preferences.

The Windows Publisher ID can be retrieved from the Windows Dev Center Dashboard.

New Features

This section describes new features introduced in Release 5.0.0.

Android Platform

This section lists new features and improvements only available on the Android platform.

Large Icon Support for Notifications

This Release supports adding a large icon to be shown in the content area of a notificaiton. Set the largeIcon property of the Ti.Android.Notification object.

Network Support

On Android, the java.net package replaces the Apache HTTP Client library for network support. Google removed support the Apache HTTP Client library in Android 6.0 in favor of using the java.net.HttpURLConnection class, which is "more efficient because it reduces network use through transparent compression and response caching, and minimizes power consumption."

Titanium Themes

This Release introduces new predefined Titanium themes for Android to hide the action bar and optionally the status bar.

Set the android:theme attribute of the Android manifest application element or set a Window object's theme property to one of the following new themes:

iOS Platform

This section lists new features and improvements only available on the iOS platform.

Attributed String Line Break

iOS now supports changing the line break behavior with AttributedStrings. Set the attribute type to ATTRIBUTE_LINE_BREAK and the attribute value to anATTRIBUTE_LINE_BREAK_* constant.

Handoff

This Release supports Handoff, a feature introduced in iOS 8 that allows a user to transfer an in-progress activity from one Apple device to another. For example, if a user starts reading a book on an iPad, they can use Handoff to read the same book on an iPhone from where they stopped reading.

For more information, see:

Icons and Launch Images

The Titanium SDK now uses the Asset Catalog to support icons and launch images, allowing the SDK to support App Thinning.

You are recommended to add a 1024 x 1024 PNG image, named DefaultIcon.png placed in the project's root folder, which is used to generate all or only omitted icons for the project. New Titanium projects will have the DefaultIcon.png file.

Note that the localized launch images in the i18n folder are not supported by Asset Catalog.

For more details, see the Icons and Splash Screens guide.

Spotlight Search

Starting with iOS 9, you can add your application's content, user activities and web content to either the private on-device index or public Apple server-side index so the user can find it using iOS Spotlight.

For more information, see:

Watch Connectivity

To communicate with watchOS 2 applications, use the Titanum.WatchSession API to exchange data and files.

Note that the application must run on an iOS 9 iPhone that supports watch apps and a watchOS 2 watch, and needs to be built with iOS 9 and Xcode 7.

To get started with Watch Connectivity, see:

Windows Platform

This section lists new features and improvements only available on the Windows platform.

API Parity

The Windows Platform expands support for several APIs, including:

For details, see the New APIs section below.

Direct API Access

This Release supports using the Windows Runtime C++ APIs directly in JavaScript. Note that the Windows C#, VB and JavaScript APIs are not supported as well as any Windows 10 API. Check the Windows API reference to see if it supports the C++ API and Windows 8 and 8.1 before using it.

To use the WinRT APIs, pass the require() method the fully qualified name of the class you want to use, then invoke API calls on the object.

For details, see the Window Runtime Direct API Access.

Known Issues

Camera Causes Application to Crash with Android SDK 6.0

The application crashes when the camera is shown and built against Android SDK 6.0 (TIMOB-19422).

If you want to deploy to Android 6.0 devices with camera support, change the target SDK to version 22 (Android SDK 5.1).

Can Only Detect One iOS 9.0 Device

When using Xcode 7, the Titanium SDK can only detect one iOS 9.0 if multiple devices are plugged in. (TIMOB-19468).

API Changes

New APIs

Multiexcerpt include
MultiExcerptName5.0.0
PageWithExcerptNew API Notice SDK 5.x

Deprecated APIs

Multiexcerpt include
MultiExcerptName5.0.0
PageWithExcerptDeprecation Notice SDK 5.x

Removed APIs

Multiexcerpt include
MultiExcerptName5.0.0
PageWithExcerptRemoval Notice SDK 5.x