API Development

WWDC 2020: Recap and Titanium Support

Last week, we attended Apple’s virtually hosted WWDC.

Today, I’ll explain how the announcements affect Titanium and what you can expect in the coming months. 

What’s new for Titanium?

  • PHPicker to access Photo Library
    In iOS 14, Apple introduced a new way to access Photo Library via the PHPicker API. PHPicker is a modern replacement of UIImagePickerController. It is privacy-focused and has features like search, multi-image selection, and ability to zoom in or out of the photo grid. In Titanium, we will update Ti.Media by replacing UIImagePickerController with PHPicker API for Photo Library access, without breaking the existing behavior. New APIs will be exposed in Ti.Media to use additional features.
  • CMHeadPhoneMotionManager in CoreMotion
    In iOS 14, Apple has provided a new feature to manage headphone motion. Read more about this feature here. For Titanium, we will expose new APIs in ti.coremotion module to use this feature.
  • CLAccuracyAuthorization in CoreLocation
    In iOS 14, Apple introduced new location authorization. This will give users more control over how much location access they would like to grant an app. See a nice talk on this here by Apple in WWDC. In Titanium, Ti.Geolocation will get updated to adopt it, and the required new APIs will be exposed. The same will be integrated into the ti.map module as well.
  • WKWebView Enhancement
    In iOS 14, Apple has added many cool features in WKWebView. In Titanium, new APIs will be exposed in Ti.UI.WebView. Start watching Jira ticket  TIMOB-27987 for new features coming in Ti.UI.WebView.
  • Widget Support
    In iOS 14, Apple has announced support for Widgets, accessible from Home Screen. Apple has given a new extension, named “Widget Extension”, to create widgets in the app. In Titanium, the use of native iOS extensions is already supported. Check out the tutorial to understand the creation of native iOS extensions and their uses in Titanium. 

Roadmap

In the coming weeks, we’ll release SDK 9.1.0, which includes approximately 100 tickets. You can follow the milestones via JIRA and GitHub to track the progress.

SDK 9.2.0 releasing this fall will support iOS 14 and XCode 12. Throughout the Apple beta release period, we will continually test to ensure that we can provide support for building against the iOS 14 SDK using XCode 12 and that existing apps run as expected on devices running iOS 14.

We plan to provide pre-release versions of the SDK to allow you to ensure that your apps will work as expected with the new iOS and XCode releases. Your feedback is important to us and will allow more stable released versions of the Titanium SDK. For updates on our progress, you can start watching Jira ticket TIMOB-27964.

If you think there are other important features which we should consider, please create a ticket in Jira.

Stay Safe and Code Strong!