Support of mobile device-specific functionality is an important feature of the mobile platform.
- Location services
- Multimedia tools
- Barcode scanning
- Text messages (SMS / MMS)
- Push and local notifications
- Purchases and advertisement
The mobile platform can define and display mobile device locations and the postal addresses of those locations. The following features are available:
- Define available location providers and get their info.
- Select the most accurate or the most energy-efficient provider.
- Define location (latitude, longitude, altitude, movement direction, speed, and date).
- Update location automatically based on a time interval or on a distance from the previous location.
- Get address by location and get location by address.
- Display address on a map. The mobile platform uses the map provided by iOS or Google Maps (on Android). Direct interaction with Google Maps is supported, therefore installing Google Maps application is not required.
The mobile platform supports recording audio and video data and taking pictures. You can convert the result to binary data and store it to the application, and you have the option to check whether the mobile device supports these operations before attempting them.
The mobile platform suports scanning and decoding barcodes. The mobile platform returns a scanned code as a string.
The mobile platform provides access to mobile device contacts. You can read all contact data, as well as create, edit, and delete contacts. These operations require user permission. The permission request is automatically displayed at the first attempt.
The mobile platform provides access to mobile device calendars and events. You can create, edit, and delete calendars and events, create reminders, schedule events, and specify event participants.
The mobile platform provides the option to dial a number, view call history, and filter call history according to the specified criteria.
The mobile platform can send text messages (SMS / MMS) and handle incoming messages.This functionality has some specifics on Android and iOS, they are described in 1C:Enterprise documentation.
The mobile platform can send email messages using the built-in mail client of the operating system. There are no limitations to the message size, attachments are also supported.
Push and local notifications notify users about some events. Events that occur while a mobile application is running in background or not running at all are also processed.
Local notifications are handy for reminders set by an application itself. These reminders can be displayed when an application is not running. You can choose between one-time reminders (displayed immediately), scheduled reminders (displayed at specific time), and periodical reminders (displayed at specific intervals).
Push notifications are handy for interaction between the main (desktop) application and mobile applications initiated by the main application. Once an event occurs in the main application, the main application sends push notifications to mobile applications.
The mobile platform uses third-party services for sending push notifications. So far two services are supported:
And the delivery is performed as follows:
Sender: main 1C:Enterprise application.
Once a mobile device is available online, the notification delivery service (APNs or GCM) sends a notification to the device.
Recipient: mobile 1C:Enterprise application.
If a mobile application is running, the notification is delivered directly to the application. If a notification handler is available, it is executed.
If a mobile application is running in background or not running, the notification is displayed by the operating system. Once a user taps the notification, the mobile application is started or activated and the notoification handler is executed.
Purchases and advertisement
The mobile platform supports in-app purchases: Google Play In-App Billing (for Android) and Apple In-App Purchase (for iOS). This includes the support of one-time purchases, consumable purchases, and subscriptions. You can use this feature in the following scenarios:
- Purchase a premium application version that provides additional functionality.
- Remove demo version limitations. For example, a demo version might limit the amount of data stored in the application. Once that amount is reached, the offer to purchase the full version with unlimited data storage is displayed.
- Purchase integration with web services. For example, a mobile application aggregates data from multiple sources. The free version comes with a limited set of sources, while the full version provides more sources of better quality.
The mobile platform supports advertisement provided by AdMob aggregator by Google and the iAd service by Apple. Mobile applications can display banners provided by these services in full-screen mode or as small banners at the top or at the bottom.