👇 See API FAQ below 👇
🪦 RIP Axway Amplify Titanium (2010 - 2022)
🪦 RIP Axway Amplify Cloud Services (2012 - 2022)
🛑 All products affected by the announcements will not be supported by Axway effective their EOL dates in 2022.
Some Open-Source versions of Axway products will live on after End-of-Life (EOL) Axway Amplify product announcements. However, some products are closed-source and will NOT continue after the shut down in 2022.
👉 Stay tuned for more info as plans are being made to save the Titanium project and move it under the control of a independent group of developers.
API FAQ:
@titanium/permissions
Titanium native mobile widget for permission requests
📓 Description
For use with requesting native device permissions on iOS and Android
🚨 Notice
There are 7 identical style files that are included in the ./styles
directory. The reason for this is there are issues with how TSS stylesheets are loaded from widgets in Alloy and it does not currently support the concept of a widget-wide app.tss
file. Any changes done to one file will need to be replicated in all the other files. Sorry about this and hopefully I can create a workaround for this in a future version of Turbo
.
https://jira.appcelerator.org/browse/TIMOB-19971
I am pleased to say that the latest version of Titanium Turbo now has support for app.tss
(albeit in an unusual way...). A feature was added to Turbo
that allows you to add a style
tag to your XML view which in turn, supports the src
tag (not unlike the script
tag).
Take a look at the implementation to see how app.tss
is used to support widget-wide styles (and more!)
✨ Features
Prompts for device permissions
Styling
You can override the styling for any control using the ID of the control.
IDs follow the pattern permission-{feature}-{control}
Controls used are:
- lottie (iOS)
- image (Android)
- title
- ask
- go
- later
i.e.
"#permission-camera-title": {
"color": "blue"
},
🚀 Getting Started
Installing
Please ensure there is a package.json file in the target directory. If there is not one present, you can create one with npm init
.
If you wish to install this in an app using Titanium Turbo, you can execute this in the project root directory:
npm install @titanium/permissions
Usage
const { camera } = require('@titanium/permissions');
const permissions_camera = await camera.ensure()
.catch(error => {
console.error(error);
});
🎓 Learn More
📚 Related projects
🎟️ Modules for Titanium Mobile
⭐ @titanium/applesignin -Native modules that allows you to use the iOS 13+ Apple Sign In API with Axway Titanium native mobile apps.
⭐ @titanium/authentication - Titanium native mobile authentication manager
⭐ @titanium/authentication-oauth - Titanium native mobile OAuth plugin for authentication manager
⭐ @titanium/calendar-picker - Turbo widget that allows you to pick dates from a calendar with Axway Titanium.
⭐ @titanium/coremotion - Native modules that allows you to use iOS CoreMotion framework with Axway Titanium native mobile apps.
⭐ @titanium/deeply - Native modules that allows you to capture Android deep links with Axway Titanium.
⭐ @titanium/essentials - Essential Toolkit for Titanium Turbo Native Mobile Apps
⭐ @titanium/icloud - Native module that allows you to use the Apple iCloud framework with Axway Titanium native mobile apps.
⭐ @titanium/identity - Native modules to add Fingerprint/FaceId/keychain access to Titanium native mobile apps
⭐ @titanium/facebook - Native modules that allows you to use Facebook SDK with Axway Titanium native mobile apps.
⭐ @titanium/googlesignin - Native modules that allows you to use the Google Sign-in SDK with Axway Titanium native mobile apps.
⭐ @titanium/lottie - Native modules that allows you to use Airbnb Lottie animations with Axway Titanium native mobile apps.
⭐ @titanium/observer - Repackaging of nx-js/observer-util for Titanium Native Mobile
⭐ @titanium/permissions - Titanium native mobile widget for permission requests
⭐ @titanium/please - Titanium native mobile module for politely requesting data
⭐ @titanium/polyfill - Titanium native mobile polyfills necessary to use packages that depend on Node.js modules
⭐ @titanium/turbo - 🚀 Turbo is a version of Titanium Alloy that adds some enhancements and customizations for rapid development.
⭐ @titanium/updater - Titanium native mobile widget to check for app updates
⭐ @titanium/webdialog - Native modules that allows you to use native SFSafariViewController (iOS) and Chrome Pages (Android) with Axway Titanium native mobile apps.
🎟️ Modules for Node.js and Titanium Mobile
project | description | npm |
---|
@geek/cache | Caching module for Node.js and Axway Titanium | |
@geek/jsonc | JSONC and JSON utilities for JavaScript with Node.js and Axway Titanium. | |
@geek/jwt | JWT parser for JavaScript Node.js and Titanium native mobile | |
@geek/logger | Logging module for Node.js and Axway Titanium | |
@geek/mobile | Toolkit for creating, building, and managing mobile app projects. | |
@geek/retry | Retry JavaScript functions and promises in Node.js and Axway Titanium | |
🎟️ Modules for Node.js
📣 Feedback
Have an idea or a comment? Join in the conversation here!
Follow Brenton House
Follow Brenton House
for the latest on great modules and libraries!
©️ Legal
The MIT License (MIT)
Copyright (c) 2019-Present -- Brenton House
https://brenton.house
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.