Last week, a couple Axway engineers (including me!) attended Apple’s WWDC in San Jose. You can find a recap of features announced during the live keynote in this blog.
Today, I’ll explain how the announcements affect Titanium and what you can expect in the coming months.
What’s new for Titanium?
- Sign in with Apple
Apple introduced a new way to simply and quickly sign into apps. Instead of using a social account login or filling out forms, customers can use their Apple ID to authenticate. Sign In with Apple will make it easy for users to authenticate with Face ID or Touch ID and has two-factor authentication built in for an added layer of security. In Titanium, we’ll expose the APIs to developers via a native module shipped with the SDK, which will help to keep the SDK lightweight.
- UITextSearchField in UISearchBar
In iOS 13, Apple will provide new APIs to customize a search bar’s text field. Read more about this feature here. For Titanium, we will expose new APIs in Ti.UI.SearchBar to allow customization.
- Multiple row selection in iOS Table View
Starting with iOS 13, it will be possible to automatically transition iOS table views into editing mode and to start selecting cells using a two-finger pan gesture. It can help users in situations where they want to perform similar operations on all selected rows e.g. Delete. In Titanium, we’ll expose a new property on ListView to enable multiple selection of Titanium ListView rows and a new event which will be fired when user stops selection.
- Navigation Bar and Tab Bar customization
In iOS 13, Apple has added many new APIs to allow customise of Navigation bar appearance via class and TabBar appearance via class. In Titanium, APIs will be exposed, so that your navigation bar and tab bar can be customized beautifully.
- Dark Mode Support
In iOS 13, Apple has embraced Dark Mode, a new dark color scheme that works system-wide and across all native apps to deliver a great viewing experience, especially in low-light environments. To support this in Titanum, we’ll expose new APIs through Ti.Color. For images, context-based images should be added to the project assets.
- SF Symbols support
In iOS 13, Apple has provided SF Symbols, a set of over 1500 consistent, highly configurable symbols which can be used by developers in their apps. To browse the full set of symbols, download the SF Symbols app from here. Through the Titanium SDK, we’ll expose the required APIs to allow the use of these symbols. e.g UIImageSymbolIconConfiguration APIs.
- Multiple window support in iPad
In iOS 13 and later, a user can create and manage multiple instances of your app’s user interface simultaneously and switch between them using the app switcher. On an iPad, a user can also display multiple instances of your app side-by-side. Each instance of your UI displays different content or displays content in a different way. In Titanium, we are working on how best to implement this feature to ensure that only minimal if any code changes are required by developers. Stay tuned for more information on this feature.
- Mac target support
Starting with macOS Catalina and Xcode 11, Apple has announced that developers can create Mac versions of iPad apps using UIKit. We are evaluating the changes that would be required to support this in Titanium. You can start watching https://jira.appcelerator.org/browse/TIMOB-27132 for updates on the discussion and progress.
- iPad OS Support
Apple has announced a new iPad OS for iPads. But, they have not provided too much detail. We’ll be closely watching this space for updates. We have started testing to ensure that existing Titanium apps deployed on iPads continue to function as expected.
We are finalizing Titanium SDK 8.0.2, which will be released shortly.
In a few weeks, we’ll release SDK 8.1.0, which includes about 90 tickets. You can follow the milestones via JIRA and GitHub to track the progress.
Finally, the SDK 8.2.0 release this fall will support iOS 13 and Xcode 11. Throughout the Apple beta release period, we will continually test to ensure that we can provide support for building against the iOS 13 SDK using Xcode 11 and that existing apps run as expected on devices running iOS 13. 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-27114.
If you think there are other important features which we should consider, please create a ticket in https://jira.appcelerator.org/