Titanium SDK

From Wikipedia, the free encyclopedia
(Redirected from Appcelerator Titanium)
Titanium SDK
Developer(s)TiDev, Inc.
Stable release
12.2.0.GA / September 15, 2023; 6 months ago (2023-09-15)[1]
Preview release
Repository
Operating systemmacOS, Windows, Linux
PlatformiOS, Android
TypeApplication framework
LicenseApache Public License v2
WebsiteTitanium SDK

Titanium SDK is an open-source framework that allows the creation of native mobile applications on platforms iOS and Android from a single JavaScript codebase.[2] It is presently developed by non-profit software foundation TiDev, Inc.[3][4][5][6][7][8]

In February 2013, Business Insider estimated that 10% of all smartphones worldwide ran Titanium-built apps.[9] As of 2017, Titanium had amassed over 950,000 developer registrations.[10]

The core component of the Titanium software ecosystem is the Apache-licensed software development kit, Titanium SDK. Alloy, a Titanium-based model–view–controller framework, is a related project presently maintained and developed by TiDev, Inc for use with the Titanium SDK.

Titanium SDK was originally developed and maintained by Appcelerator, Inc, then later by Axway, Inc after Axway purchased Appcelerator in 2016.[8] Today the Titanium SDK and related projects are developer-maintained under direction of non-profit Alabama corporation TiDev, Inc. based in Centreville, Alabama.[11]

Architecture[edit]

The core features of Titanium SDK include:

  • A cross-platform API for accessing native UI components such as navigation bars, menus, and dialog boxes and native device functionality including the file system, network, geolocation, accelerometer, and maps.
  • Transparent access to native functionality covered by Hyperloop and native modules.
  • MVC-based framework Alloy

All application source code gets deployed to the mobile device where it is interpreted[12] using a JavaScript engine; Mozilla's Rhino is used on Android, BlackBerry, and Apple's JavascriptCore is used on iOS.[13] In 2011 it was announced that a port to Google's V8 JavaScript engine is in development which, when complete, will significantly improve performance.[14] Program loading takes longer than it does for programs developed with the native SDKs, as the interpreter and all required libraries must be loaded before interpreting the source code on the device can begin.

Titanium provides APIs for:

  • Use of hardware-specific features, such as the Android menu button
  • Use of OS-specific controls, such as the Cocoa UI controls on iOS
  • Participation in the platform ecosystem, for example using platform-appropriate notification mechanisms

History[edit]

When it was introduced in December 2008, Titanium was intended for developing cross-platform desktop applications and was sometimes compared to Adobe Air.[15][16] However, it added support for developing iPhone and Android mobile applications in June 2009, and in 2012, Titanium Desktop was spun off into a separate, community-driven project named TideSDK.[17][18] Support for developing iPad-based tablet apps was added in April 2010.[19] BlackBerry support was announced in June 2010,[20] and has been in beta since April 2013. Tizen support was also added in April 2013 with the 3.1.0 Titanium Studio and SDK releases. The latest addition to the platform in 2016 has been Hyperloop, a technology to access native API's on iOS, Android and Windows with JavaScript.[21]

In April 2010, Appcelerator expanded the Titanium product line with the Titanium Tablet SDK. The Titanium Tablet SDK draws heavily from the existing support for iPhone, but it also includes native support for iPad-only user interface controls such as split views and popovers. Initially the mobile SDK only supported development for iPad, but support now includes Android-based tablets as well.

In June 2011, Appcelerator released Studio and Titanium Mobile 1.7.[22] Studio is a full open standards IDE that is derived from Aptana Studio which Appcelerator acquired in January 2011.

In June 2013, Jeff Haynie, Appcelerator's CEO, announced that the company had begun Ti.Next, a project to rewrite the Titanium SDK in Javascript for improved performance and to bring Titanium's end users, who write in Javascript, closer to the internal code.[23] In a blog post, he wrote:

We believe JavaScript should be the right language to build Titanium, not just apps on top of the Titanium SDK. With Ti.Next, we've created a small microkernel design that will allow us to have minimal bootstrap code in the native language (C, Java, C#, etc) that talks to a common set of compilers, tools and a single JavaScript Virtual Machine. We have found a way to make the WebKit KJS VM work on multiple platforms instead of using different VMs per platform. This means we can heavily optimize the microkernel (herein after called the "TiRuntime") and maintenance, optimizations and profiling can be greatly simplified. We're talking about ~5K LOC vs. 100K LOC per platform.[24]

In January 2016, Appcelerator was acquired by Axway, a global software company with more than 11,000 public- and private-sector customers in 100 countries.[25] Since then, the Indie plans have been made free again, including native API access with Hyperloop.[26]

Versions[edit]

Version (since 2022) Release date
11.1.0.GA 8 September 2022
11.1.1.GA 26 September 2022
12.0.0.GA 30 December 2022
12.1.0.GA 24 April 2023
12.1.1.GA 28 April 2023
12.1.2.GA 2 June 2023
12.2.0.GA 15 September 2023

with all minor updates and release candidates.[27]

Notable features[edit]

  • Since April 2018 it is possible to use Angular 6 in combination with Titanium to create mobile apps.[28][29]
  • Titanium can be used with Vue.js as a framework to develop apps since May 2018.[30][31]
  • Titanium supports ES6 features since SDK 6.1.0 like Classes, fat arrow functions and more.[32]
  • Hyperloop[33] allows the user to access native code (Java, Objective-C, Swift, C#) within JavaScript and use 3rd party libraries.
  • With Appcelerator Titanium it is possible to create native apps using JavaScript. The compiled apps use native UI components with a connection layer that is able to connect those native UI elements with your JavaScript code. The benefit is that the user will have the best user-experience on every platform since it uses the correct/native UI elements instead of creating custom elements.
  • One goal of Titanium is to reuse as much code for both platforms as possible. There is a high parity level of components and using the Alloy MVC framework makes it possible to share up to 90% of your code on both platforms.[34]

See also[edit]

References[edit]

  1. ^ "GA Release of Titanium SDK 12.2.0". 15 September 2023.
  2. ^ "Titanium Command-Line Interface Reference | Titanium SDK". titaniumsdk.com. Retrieved 2023-01-04.
  3. ^ Brousseau, Christian (October 25, 2013). Creating Mobile Apps with Appcelerator Titanium (1st ed.). Packt Publishing. p. 318. ISBN 978-1-84951-926-7.
  4. ^ Bahrenburg, Benjamin (June 25, 2013). Appcelerator Titanium Business Application Development Cookbook (1st ed.). Packt Publishing. p. 328. ISBN 978-1-84969-534-3.
  5. ^ Ward, Trevor (October 2012). Augmented Reality using Appcelerator Titanium Starter (1st ed.). Packt Publishing. p. 52. ISBN 978-1-84969-390-5.
  6. ^ Martin, Terry (April 24, 2012). Building iPhone Applications with Titanium (1st ed.). Wiley. p. 352. ISBN 978-0-470-66083-6.
  7. ^ Pollentine, Boydlee; Ward, Trevor (February 2012). Appcelerator Titanium: Patterns and Best Practices (1st ed.). Packt Publishing. p. 110. ISBN 978-1-84969-348-6.
  8. ^ a b Pollentine, Boydlee (December 16, 2011). Appcelerator Titanium Smartphone App Development Cookbook (1st ed.). Packt Publishing. p. 308. ISBN 978-1-84951-396-8.
  9. ^ Julie Bort (1 February 2013). "Microsoft Might Buy A Startup That Powers 10 Percent Of The World's Smartphones". Business Insider. Retrieved 11 July 2013.
  10. ^ Appcelerator (7 May 2017). "Appcelerator". Retrieved 7 May 2017.
  11. ^ Hobson, Mike. "Titanium Mobile Development Software Finds a New Home In Central Alabama | The Bibb Voice". Retrieved 2023-01-04.
  12. ^ "Axway Software".
  13. ^ Kevin Whinnery. "Titanium Guides Project: JS Environment". Appcelerator. Titanium runs your application's JavaScript using one of two JavaScript interpreters – JavaScriptCore on iOS (the interpreter used by Webkit) and Mozilla Rhino on Android and BlackBerry.
  14. ^ Don Thorp (2011-09-07). "Platform Engineering: Android Runtime Performance Improvements". Appcelerator.
  15. ^ "Appcelerator Raises $4.1 Million for Open Source RIA Platform". Techcrunch. 9 December 2008. Archived from the original on 2 November 2009. Retrieved 29 October 2009.
  16. ^ "Appcelerator Takes On Adobe AIR with Titanium". eWeek. 9 December 2008. Retrieved 29 October 2009.
  17. ^ Appcelerator Developer Blog – The Future of Titanium Desktop
  18. ^ "Appcelerator enables iPhone, Android app dev". InfoWorld. 8 June 2009. Archived from the original on 21 November 2009. Retrieved 29 October 2009.
  19. ^ "Appcelerator Simplifies iPad App Development". Mashable. 5 April 2010. Archived from the original on 7 April 2010. Retrieved 6 April 2010.
  20. ^ "Appcelerator Announces Titanium Mobile Beta Support for BlackBerry [News] | Apps & Games | BlackBerry Rocks!". Archived from the original on 2010-05-09. Retrieved 2013-02-19.
  21. ^ Jeff Haynie (11 August 2016). "Appcelerator Simplifies iPad App Development". Retrieved 7 May 2017.
  22. ^ Perez, Sarah (14 June 2011). "Appcelerator Launches Titanium Studio: Mobile, Desktop & Web Development in One". ReadWriteWeb. Retrieved 14 June 2011.
  23. ^ Martin Monroe (10 August 2013). "Ti.Next: What's It All About? Appcelerator, Part 2 of 2". InfoQ. Retrieved 18 February 2024.
  24. ^ Jeff Haynie (3 July 2013). "Thoughts on Ti.Next". Retrieved 4 February 2014.
  25. ^ Jeff Haynie (17 January 2016). "Axway Acquires Appcelerator—And Why This is Great News for All". Retrieved 5 May 2017.
  26. ^ Brad Hipps (2 May 2017). "Appcelerator Indie Plans Are Now Free! And Wait, There's More…". Retrieved 5 May 2017.
  27. ^ https://titaniumsdk.com/guide/Titanium_SDK/Titanium_SDK_Release_Notes/
  28. ^ GitHub – appcelerator/titanium-angular: Use the Titanium platform with Angular., Team Appcelerator, 2019-06-03, retrieved 2019-08-04
  29. ^ Vennemann, Jan (2018-04-23). "Titanium Angular Technical Preview Release Now Available". Axway Developer Blog. Retrieved 2019-08-04.
  30. ^ Knoechel, Hans (2018-05-07). "Announcing Vue.js Support in Titanium". Axway Developer Blog. Retrieved 2019-08-04.
  31. ^ Use Vue.js to easily create native mobile apps with Axway Appcelerator Titanium.: appcelerator/titanium-vue, Team Appcelerator, 2019-04-04, retrieved 2019-08-04
  32. ^ Mason, Darren (2018-06-20). "Using ES6+ in a Titanium App". Axway Developer Blog. Retrieved 2019-08-04.
  33. ^ "Hyperloop". www.appcelerator.com. Retrieved 2019-08-04.
  34. ^ "Products". www.appcelerator.com. Retrieved 2019-08-04.

External links[edit]