Older posts can be found here.
Intro
New year and it is finally time for another Titanium News
post! Lot's of work during the last blog post and Titanium SDK is now already at version 12.6.1.GA. So let's find out what's changed.
Titanium 12.4.0 - 12.6.1.GA
12.4.0
In the last Titanium News #19 I've covered all 12.4.0.RC features that made it into the final version.
12.5.x
Version 12.5.0.GA came out on Sept 16h 2024 and added support for iOS 18 and Xcode 16.
- On Android we can now finally adjust the padding of a Textfield without the text disappearing:
- Android apps are now signed with signature scheme v3 and the default target SDK is Android API level 34 now
- if you open the photo gallery on Android you define
maxImages
to select a max. number of images and you can usepathOnly
to just return the paths to the images and not the blobs - Androids ListView layout was flattened (with some fixes in 12.5.1) to reduce the complexity
you can use
window.statusBarColor
now on Android to change the statusBar color with code
iOS adds
interactiveDismissModeEnabled
to dynamically close a window by using a swipe gesture across the whole windowioslib was updated to support the new Xcode provisioning profile folder and fixes incremental builds
12.6.x
With Ti 12.6.0 release notes you are now able to use module that use Gradle 8. So feel free to update your modules now!
If you update your modules make sure to set minsdk: 12.6.0.GA
in the manifest files as newer modules are compiled with JAVA_17 now instead of JAVA_11. That way you'll make sure that older SDKs won't load your module and not throw a Java error when building your apps. To make sure your module works in older SDKs you can build your module with ti build -p android -b --sdk 12.5.1.GA
.
Other changes include:
- iOS dark mode icon support
- Android: added new methods in Ti.Calendar.Calendar module for bulk operations
- update to Hyplerloop to support Ti 12.6.0+
the content of an Android WebView will fill up the whole height by default now
small rotation fixes for CameraX rotation (open the camera with
useCameraX: true
)a fix when you start you Android app from the home screen or play store
For all changes and code examples make sure to check the release notes and the linked tickets.
Preview
One change is already merged into the master branch (12.7.0): an update to the Material library. This means that you can build Android modules now that threw this error before:
Error: Can't determine type for tag '?attr/shapeAppearanceCornerSmall'
One of those modules was titanium-stripe. As a first test I've updated that module https://github.com/hansemannn/titanium-stripe/pull/5 to use a newer version (Stripe 20.53.0 from October). They've raised some other libraries after that so it's not the latest library yet 🙂
So if you had a library that threw the macro error you can use a nightly build of Titanium SDK and build your modules with that. To do that you run ti build -p android -b --sdk 12.7.0 in your modules /android folder.
BottomNavigation improvements
Another PR I'm currently working on is to improve the BottomNavigation on Android. There is currently a small height bug when you use it with Material 3. The new experimental
implementation is based on a XML layout and removes the height issue. It will also follow the Material guidelines and show only one active window and you can use a icon font for the tab icons right away. Some images and videos are available in the pull request.
Dynamic Android icons
Ti.App.Android.changeIcon({
from: "default",
to: "red"
});
I also made a test pull request with a demo how to change the Android app icon at runtime. iOS has for this.
There are many more smaller bugfixes and code improvements. So make sure to browse through the https://github.com/tidev/titanium-sdk/pulls section.
Modules
- ti.animation: the Android version was updated to support external URLs as a file input https://github.com/m1ga/ti.animation
- ti.facebook: the included Facebook module was updated to use the latest Facebook SDK
- ti.colorpicker: more properties, example code and fixes for the Android version https://github.com/hansemannn/ti.colorpicker
- firebase-firestore: bug fixes and improvements when creating a document https://github.com/hansemannn/titanium-firebase-firestore/releases
- crashlytics: the update-symbols script for iOS was updated https://github.com/hansemannn/titanium-crashlytics
- ti.pusher: a new version with updated Pusher libraries was released https://github.com/hansemannn/titanium-pusher/releases
- ti.okhttp: adds file upload for POST requests https://github.com/m1ga/ti.okhttp
- ti.car: I've uploaded the binary for the Android Auto module: https://github.com/m1ga/ti.car
That's it
If you have feedback or some interesting Titanium SDK apps, modules or widgets you would like to share: get in contact with me or leave a comment and I'll add it to the next Titanium news
.
Top comments (0)