# Titanium.App.Android
A module used to access Android application resources.
# Overview
For more information, refer to the official documentation on the Android Developer website about application resources (opens new window).
# Examples
# Custom String Resource
Custom Android resources may be placed in platform/android
in the project root.
For example, to utilize a custom localization file, create and populate
platform/android/res/values/mystrings.xml
with the following data.
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="mystring">testing 1 2 3</string>
</resources>
In Javascript, this can be accessed as follows.
var activity = Ti.Android.currentActivity;
var R = Ti.App.Android.R;
var mystring = activity.getString(R.string.mystring);
Ti.API.debug("mystring = " + mystring);
# Properties
# apiName READONLY
The name of the API that this proxy corresponds to.
The value of this property is the fully qualified name of the API. For example, Titanium.UI.Button
returns Ti.UI.Button
.
# bubbleParent
Indicates if the proxy will bubble an event to its parent.
Some proxies (most commonly views) have a relationship to other proxies, often established by the add() method. For example, for a button added to a window, a click event on the button would bubble up to the window. Other common parents are table sections to their rows, table views to their sections, and scrollable views to their views. Set this property to false to disable the bubbling to the proxy's parent.
Default: true
# launchIntent READONLY
Return the intent that was used to launch the application.
This intent will not change for the lifetime of the application. Its action is typically set to "android.intent.action.MAIN" when launched via the app list screen.
This launch intent can be used to resume the app while backgrounded via the startActivity method or via a notification.
When the app is launched via a data intent such as a URL, shortcut, notification, etc. then that intent is provided by the rootActivity object's intent property instead. That intent will initially be set to the launch intent, but will change when a newintent event has been fired. You should always read the root activity's intent instead of the launch intent for data.
# lifecycleContainer
The Window or TabGroup whose Activity lifecycle should be triggered on the proxy.
If this property is set to a Window or TabGroup, then the corresponding Activity lifecycle event callbacks will also be called on the proxy. Proxies that require the activity lifecycle will need this property set to the appropriate containing Window or TabGroup.
# Methods
# addEventListener
Adds the specified callback as an event listener for the named event.
Parameters
Name | Type | Description |
---|---|---|
name | String | Name of the event. |
callback | Callback<Titanium.Event> | Callback function to invoke when the event is fired. |
Returns
- Type
- void
# applyProperties
Applies the properties to the proxy.
Properties are supplied as a dictionary. Each key-value pair in the object is applied to the proxy such that myproxy[key] = value.
Parameters
Name | Type | Description |
---|---|---|
props | Dictionary | A dictionary of properties to apply. |
Returns
- Type
- void
# fireEvent
Fires a synthesized event to any registered listeners.
Parameters
Name | Type | Description |
---|---|---|
name | String | Name of the event. |
event | Dictionary | A dictionary of keys and values to add to the Titanium.Event object sent to the listeners. |
Returns
- Type
- void
# removeEventListener
Removes the specified callback as an event listener for the named event.
Multiple listeners can be registered for the same event, so the
callback
parameter is used to determine which listener to remove.
When adding a listener, you must save a reference to the callback function in order to remove the listener later:
var listener = function() { Ti.API.info("Event listener called."); }
window.addEventListener('click', listener);
To remove the listener, pass in a reference to the callback function:
window.removeEventListener('click', listener);
Parameters
Name | Type | Description |
---|---|---|
name | String | Name of the event. |
callback | Callback<Titanium.Event> | Callback function to remove. Must be the same function passed to |
Returns
- Type
- void
# Events
# shortcutitemclick
Fired when a Titanium.UI.ShortcutItem is clicked.
Properties
Name | Type | Description |
---|---|---|
id | String | Identifier of the clicked shortcut item. |
source | Object | Source object that fired the event. |
type | String | Name of the event fired. |
bubbles | Boolean | True if the event will try to bubble up if possible. |
cancelBubble | Boolean | Set to true to stop the event from bubbling. |
# Constants
# R
The R
namespace for application resources.
The properties and sub-properties of this object relate directly to the
native application resources R
class, and thus have the same syntax.
For more information, refer to the official documentation on the
Android Developer website about
accessing application resources.
For example, if the file platform/android/res/drawable/icon.png
exists in the project, it can be accessed using its resource name,
as follows.
var resid = Titanium.App.Android.R.drawable.icon;
To access system-wide resources, rather than application resources, use Titanium.Android.R instead.