New in MobileTogether 10.0

Version 10.0 of Altova MobileTogether was announced on September 24, 2024. Learn about all the details below and update to the the latest version.

MobileTogether 10.0 (September 24, 2024)
Support for mobile scanners
New HTML label control
Styles Inspector in simulator
Ability to find unused localization strings
Support for grid view of available apps on web browsers
Additional information about apps on MobileTogether Server
Support for control variables
Support for additional database versions

Support for mobile scanners

Many industries, from warehousing and shipping to retail, take advantage of handheld scanners for collecting information. Data captured by the scanner can be used to update inventory levels, order statuses, customer information, and other data in real time. However, the scanner alone is not enough: data collected must be parsed and processed before interacting with backend databases and systems, and new functionality in MobileTogether makes that easier than ever before.

Adding to longtime support for scanning barcodes and QR codes with a device camera, MobileTogether now includes support for storing and processing codes from handheld scanners. MobileTogether customers can take advantage of its low-code approach to rapid app development to build these types of solutions in record time – without the need for specialized mobile development teams and long development cycles. MobileTogether’s affordable, scalable pricing model makes apps that connect to mobile scanners as accessible to small businesses as to large industrial organizations.

Support for handheld scanners is implemented with a new set of MobileTogether page sources, Actions, functions, and variables for processing data from scanners. Once implemented, barcodes and QR codes can be scanned by external barcode scanners and have their data passed to a MobileTogether solution.

Actions for implementing barcode scanning in MobileTogether

MobileTogether also lets developers simulate the use of barcode scanners using sample data during app testing.

Support has been added for the most popular handheld scanners: Zebra, Zebra Mobile Computer, and Datalogic Mobile Computer. Some scanners, like Zebra Mobile Computers and Datalogic Mobile Computers, are Android mobile devices with an integrated scanner. The MobileTogether solution can reside directly on these devices. In other cases, the scanner connects to a device like a tablet or laptop running the MobileTogether app via a Bluetooth or USB connection.

Support for mobile scanners has been requested by a number of MobileTogether customers. This functionality allows developers to build apps for industries like retail, logistics, healthcare, and manufacturing that rely on real-time data collection.

Because MobileTogether uses a low-code approach to rapid app development, teams can add previously complex features like mobile scanner integration without needing to write extensive code. This dramatically speeds up the development process, especially in industries where access to real-time data is critical.

HTML label control

When you use a regular Label control during app design, the styles that you assign in the Styles & Properties pane are applied to the entire label. However, sometimes it is useful to apply varying styles to the text within a label. Using the new HTML Label control, you can do just that using standard HTML code. When the text is displayed on a client device, it is rendered with the defined formatting. For instance, the label definition below…

HTML label config

…will be displayed as:

HTML label result

The HTML Label accepts HTML elements including <b>, <i>, <u>, <s>, <a href> and their associated attributes, as well as CSS styles like font-style and font-weight.

The text content in an HTML Label is static and will be displayed as exactly as you enter it. For dynamic content, a traditional Label control is required.

Styles Inspector in simulator

When simulating an app in MobileTogether Designer, a new Styles Inspector shows detailed information about the computed styles of the controls on the current page.

You can open the Styles Inspector with a button in the simulator toolbar. All controls used in the app will be listed, and clicking on one displays its styles definition. Alternatively, you can Ctrl-click the control you wish to investigate, and the Inspector will open with the information about that control displayed. The Styles Inspector displays information about the control’s configured styles and values, as well as how each has been calculated.

Styles inspector in MobileTogether

The Styles Inspector in the MobileTogether simulator is a huge help when an app includes many controls: Developers can immediately understand why a control is shown in a particular scenario and why it is rendered with the current styles.

Ability to find unused localization strings

MobileTogether supports the ability to localize apps in multiple languages. As a localized app evolves over time, some localized strings may no longer be used. Now, it is possible to find these inactive strings and remove them.

The command to list unused functions, user variables, etc., in the Refactor menu been extended to also list unused localized strings.

This functionality increases efficiency and helps reduce the size of the solution.

Support for grid view of available apps on web browsers

When an organization runs multiple MobileTogether apps on their MobileTogether Server, they’re shown in a user-friendly grid on iOS, Android, and Windows client apps. Previously, web browsers displayed the apps in a list. Now, users accessing the server through a web browser can also enjoy the grid view, where each app’s name and icon is clearly displayed for quick, easy access.

Additional information about apps on MobileTogether Server

Server administrators can now see additional information for each app, including the dates when it was last deployed and last accessed. This is particularly useful in organizations with multiple MobileTogether apps. These dates make it easier to identify apps that are out of date or used infrequently.

Support for control variables

When adding controls to a design, the developer can now define control variables. Control variables are defined for individual controls and are evaluated when the control is created. Control variables provide more flexibility to set values according to the context of a specific control.

Support for additional database versions

Database support has been updated to include the latest version of several databases, including:

  • SQLite 3.45
  • MariaDB 11.2
  • MySQL 8.2, 8.3
  • PostgreSQL 16

New Features in Other Recent Versions

New in MobileTogether 9.0 and 9.1

MobileTogether 9.1 (February 6, 2024)
AI Assistant in RecordsManager 3.1

AI Assistant in RecordsManager

MobileTogether 9.1 includes the latest version of RecordsManager, a built-in, no-code solution for building business database solutions.

For instant generation of a full-featured database, RecordsManager now includes an AI Assistant that creates databases based on natural language prompts. Users can enter simple or complex prompts, and RecordsManager will use AI integration to generate the corresponding database, tables, and sample data.

With the new AI-powered RecordsManager, app developers don't have to spend time planning a database structure or even understand the technical details of how databases work. You just tell the software what kind of information you want to store, and it takes care of designing and setting up the entire database for you. You can channel your energy into refining the system, improving functionality, and enhancing user experience, rather than getting bogged down in the details of database creation.

RecordsManager even generates display forms, data entry forms, reports, and other app elements based on the AI-generated database.

Learn more about the RecordsManager AI Assistant .

MQTT support

MQTT (Message Queuing Telemetry Transport) is a lightweight messaging protocol used for communication by smart devices. MQTT uses a subscribe/publish architecture that is intermediated by a broker. This system allows smart devices to publish messages to specific "topics," and other devices interested in those topics can subscribe to receive those messages. In this way, MQTT enables monitoring, control, and automation of IoT devices from different manufacturers as well as integration of such devices into a centralized control and monitoring solution.

Today, MQTT is a critical component of real-time monitoring and control of devices and processes in a wide variety of industries including automotive, manufacturing, transportation, healthcare, and others. Industrial automation is enabled through MQTT when sensors and actuators can publish and subscribe to relevant topics, facilitating efficient communication throughout the system. The technology can also be used in smart home and smart office systems where IoT devices, such as lights, thermostats, and sensors, need to communicate with each other.

MobileTogether 9.0 supports MQTT by allowing apps to join an MQTT network as a publisher, as a subscriber, or as both. For instance, you can build an app that monitors equipment temperature in a manufacturing facility: The temperature reading is subscribed to by a PLC that adjusts processes in reaction to the temperature and by the app for real-time data visualization and monitoring.

MQTT support in MobileTogether is enabled with a new page source as well as new actions, page events, and variables.

Tools for building an MQTT app in MobileTogether

When creating an app with MQTT functionality, developers can record an MQTT message stream to a file, and then replay it in the MobileTogether app simulator to test and debug during development.

MQTT support in MobileTogether 9.0 gives developers the flexibility to implement a wide range of IoT automation apps, from smart home to large-scale industrial automation applications and beyond.

Check out our sample video showing a home automation app built in MobileTogether. MobileTogether 9.0 also ships with a sample MQTT solution to get you started with this functionality.

Here's how to get started building an MQTT app in MobileTogether

Support for table row dragging

This new functionality allows end users to drag to reorder table rows. You can enable row dragging on a per-table basis and define actions to be performed when the row is dropped in its new position.

Support for table row swiping

Similar to support for row dragging, row swiping gives end users the ability to perform actions (e.g., row deletion) by swiping left or right.

Native support for MySQL and MariaDB

MobileTogether has long provided support for connecting to MySQL and MariaDB (as well as numerous other databases) via generic ADO/ODBC/JDBC connections. Now, the framework supports native connections to MySQL and MariaDB without the need for external drivers, which is much faster and more convenient.

Support drawing barcodes and QR codes

Adding to existing support for scanning barcodes with the device camera, MobileTogether apps can now generate barcodes and QR codes directly for in-app display. A variety of barcode types is supported, including UPC, EAN, QR, and others.

Drawing QR codes in your app

Support for drawing barcodes and QR codes adds functionality and flexibility to myriad use cases, from inventory management and asset tracking to point of sale discounting and more.

Chart generation on clients

It is now possible to enable charts to be generated directly on the client device without making a round trip to the server. This means, for example, that a displayed chart will change instantly when an end user changes some of the underlying data or its settings. Overall, this makes chart generation much faster and smoother.

Page source tree editing during simulation

During app simulation in MobileTogether Designer, the page source structure and data itself may now be modified in the Page Sources Pane. You can add or rename elements and attributes or test specific data during simulation. This allows you to simulate real world situations, e.g., when you need to test a specific value or condition during simulation. Now, you can simulate all these scenarios that contain different data and/or structures without needing to modify the source data.

Dark and Light themes for MobileTogether Designer

By popular demand, MobileTogether Designer is now available in dark mode, as well as a crisp new light mode. The previous theme is still available as classic mode. You can switch between classic, light, and dark themes at any time, depending on your working preferences. The MobileTogether client apps have, of course, already supported dark and light themes since version 7.2.

 

Dark mode in MobileTogether Designer

Solution aliases on the Server

A single solution can now appear multiple times on a MobileTogether Server via the use of aliases. This is useful when you want to replicate an app and customize certain parameters, for instance with one alias connected to a test database and one to a production database. Solution aliases can appear on the server with different names and different icons.

Support for multiple row groups per table

Support for multiple row groups in each table makes it possible to enable a flexible header size for a fixed header. This way, the header is dynamic and can contain multiple rows while still remaining fixed at the top of the table during scrolling of the contents below.

Additional button looks

MobileTogether includes a library of image icons that can be used on buttons for enabling familiar functionality. This release includes additional new button looks for:

  • Select single, select multiple
  • Link, unlink
  • Dragging, popup
  • Close
  • Save
  • Photo, gallery

New in MobileTogether 8.1

Major updates for no-code development using RecordsManager

Altova RecordsManager is a no-code solution for creating custom database apps in MobileTogether Designer.

When you first open MobileTogether Designer, have the option to create a classic MobileTogether solution — or create an app with an intuitive, purely visual design interface using Altova RecordsManager.

MobileTogether 8.1 introduces new features in RecordsManager 2.0 including:

  • Major scripting extensions for configuring complex conditions visually
  • Hierarchical user groups
  • Extended list form sorting options
  • And much more

UI compatibility mode between clients

MobileTogether automatically creates apps for iOS, Android, Windows, and the web simultaneously, based on your single design. However, the look and feel of default elements — such as default fonts and colors, button looks, margins and padding, and so on — often differs among operating systems. When a MobileTogether developer wants an app to look as close to the same as possible across all platforms instead of using the native look-and-feel of each, it is now possible to enable this automatically using the new UI Compatibility Mode option.

Selecting UI Compatibility mode in MobileTogether

When this option is set to True, MobileTogether will make the default style values in your project as similar as possible. This saves developers a tremendous amount of time previously spent on fine tuning styles per OS.

Asynchronous progress update

Developers now have the option to display a progress bar to app users while longer server actions execute, such as a lengthy database update. The progress indicator and behavior are defined as a subpage that appears when the server actions start to be executed. The progress subpage closes automatically when execution of the server actions is completed—or when the user cancels execution. An example of a progress indicator is shown below, though developers can implement it as desired.

App progress bar

The new progress indicator functionality is accompanied by a tutorial in the MobileTogether Designer Help Manual explaining the new actions, variables, and functions for implementation.

Deployment of very large server-side files

Support for large server side files has been extended to accommodate files 100 MB and larger. This capability further enforces use of MobileTogether as a powerful development framework for large enterprise apps.

Support for EXCLUSIVE transactions in SQLite databases

SQLite databases offer the option to restrict database connections to a single user during critical changes, such as modification of the table structure to add new fields or additional tables, rename items, etc. Allowing a single connection for a short period of time for critical changes helps preserve database integrity and consistency.

MobileTogether developers now have the ability to use this option on the DB Begin Transaction Action. When connecting to a SQLite database, a timeout (in seconds) property becomes available, allowing the developer to specify a waiting period for the write-lock. When the EXCLUSIVE transaction is active, other connections are not able to read or write to the DB and get a message that the DB is currently locked.

Option to not save child tables

When a database is loaded hierarchically, it can be useful to make sure that only modifications to the top table are saved and child tables are not modified. For instance, when editing data in a parent table and the app loads data in its child table(s) for display purposes, it’s useful to ensure that only changes in the parent table are saved. This helps with editing concurrency when multiple users are editing data in different tables.

New Actions: copy/paste to clipboard

New Actions are available to add copy / paste functionality to nodes, allowing app users to copy and paste content between nodes and between the MobileTogether app and other apps using their device’s clipboard.

New button image: Web

Developers can add images to buttons in their MobileTogether apps, either by selecting from a list of built-in images or using a custom image. A new image showing the web is now available in the list of built-in options.

Strikethrough font for additional controls

Developers can now specify strikethrough font for checkboxes, radio buttons, and buttons in addition to labels.

Support for Android 13

Apps built in MobileTogether can take advantage of all the features and functionality in the latest version of the Android operating system.

Support for additional database versions

MobileTogether supports connectivity to a wide range of relational database types and versions. Support has been extended to include the latest versions of databases including:

  • MariaDB 10.9.2
  • PostgreSQL 14.5
  • SQLite 3.39.2

New in MobileTogether 8.0

Option to create a no-code database app with Altova RecordsManager

Altova RecordsManager is a brand new solution for creating custom database apps in MobileTogether.

Starting with Version 8.0, when you open MobileTogether Designer you will have the option to create a classic MobileTogether solution — or start with Altova RecordsManager. RecordsManager has a visual interface for quickly building business database apps for desktop and mobile users.

One of the biggest advantages of RecordsManager is that app creators don’t need to build the database backend themselves. They simply focus on the objects they want to model, and RecordsManager takes care of the rest. This saves an incredible amount of time and work and allows system administrators or developers of all skill levels to easily create effective apps.

Check out this video to see RecordsManager in action.

New Database Wizard & support for hierarchical DB read/write

Previously, working with backend data in relational databases required quite a bit of hand-written SQL work to perform commonly required tasks. For instance, including data from two tables in a single form required two separate database queries. As such, saving the same data back to the database was also complicated.

MobileTogether 8.0 takes an entirely new approach that lets developers more readily build a query that returns hierarchical data and write the data back in hierarchical form. The new Database Wizard provides an easy way to build SELECT statements visually, and any parameter to the SQL query can now be directly expressed using an XPath statement, i.e., there is no longer a need to explicitly declare parameters.

MobileTogether database wizard

 

The Database Wizard also lets developers add tables connected via foreign keys to the result – all in a single step. This means an entire hierarchy can be retrieved at once.

 

Adding tables

Any changes made during app execution will be intelligently written back to the relationally linked database at once. When saving hierarchical data, the app developer can choose whether to save modifications only or to replace all the data for the current record. This decision can be made on each level independently. Data replacement is the preferred option when multiple users are allowed to edit the same record at the same time.

The new approach to working with hierarchical data in otherwise flat relational databases in MobileTogether will prove to be a huge time saver that makes app development that much simpler.

Support for modularization

MobileTogether 8.0 introduces the ability to modularize the app design file so that multiple developers can work on the same project. This also adds the ability to reuse parts of projects in other projects.

To facilitate refactoring of existing projects, there is a new option to extract part of an existing project as a new sub project. This enables a wide range of components that are defined in a project to be re-used across multiple projects. One subproject can include another subproject.

A new Refactor menu provides options for working with subprojects. Subprojects included in a particular design file are displayed in the Files pane.

Refactor menu in MobileTogether

Modularization is also implemented with a new Modules pane, which organizes design components into logical parts.

The Modules pane provides a single location for managing modules, which are grouped automatically based on their names. This way, you can tell at a glance which functions and actions go with which pages, and you can navigate to them automatically from the modules listing. Modules are organized by name using dot notation ( i.e., ModuleName.ComponentName, etc.). For example, see the Edit Field module in the screenshot below that includes all the related variables, Action Groups, pages, XPath functions, subpages, etc., grouped together by name.

You can move unassigned items into modules by renaming them. Or, you can move or re-assign items manually, and MobileTogether Designer will automatically rename them accordingly and update all references across the project.

Adding a custom color to a module highlights the module items in that color across the project for easy identification.

Modules in MobileTogether Designer

When a subproject is extracted from a project, all components of the project will, by default, be exported to the subproject. If you want to export only a subset of components, then you can group them in a module and set the Export property of the module to either Exported or Not Exported, as appropriate.

The Modules pane automatically organizes large projects and helps you find things more easily to immediately understand how and where each item is used. Items that belong together are grouped together logically, making the entire project easier to understand. This is also extremely helpful when a project is inherited or worked on by multiple developers.

Refactoring and modularization offer numerous advantages from reducing development time and enabling teamwork to supporting fast, flexible updates and maintenance.

Server Libraries

Server Libraries are a new type of MobileTogether design file. When an app or solution utilizes a Server Library, the library can be exchanged at any time without needing to redeploy the app. This allows for much quicker roll-out of app updates and changes, especially for complied apps – which no longer need to be recompiled and sent through the app store approval process.

A Server Library is a MobileTogether design file that contains one or more Action Groups, and its functionality is limited to processing these Action Groups. At runtime, a solution can send a call to a Server Library with or without parameters. The Server Library processes the specified Action Group and returns the result to the calling solution.

Server Library in MobileTogether

Server Libraries are well suited for situations, for example, in which data is retrieved from a data structure that is outside of the developer’s control and that changes arbitrarily and at irregular intervals. It might be difficult to modify and deploy a new main solution and update already downloaded solutions each time this data structure changes. However, a Server Library could deal with the modifications of the data structure outside the main solution, process the modified data structure, and return data to the main solution so that the returned data conforms to the structure expected by the solution. Server Libraries are also helpful for efficiently addressing issues with internal data processing.

Advantages of this approach include:

  • Since its purpose is limited, a Server Library is smaller and simpler than the main solution and can be changed easily and quickly.
  • The modified external data structure can be processed entirely within the Server Library so that data is retrieved from the external data structure and sent to the main solution in a structure that the main solution uses.
  • The modified Server Library can be deployed to the server in a simple deployment procedure. The main solution, which is also deployed on the server, does not need to be modified in any way. This also means apps and solutions already downloaded to clients won’t need to be updated.

Use of Server Libraries requires MobileTogether Server Advanced Edition.

Ability to restrict logging in MobileTogether Designer

When simulating an app in MobileTogether Designer, it is now possible to restrict logging functionality to reporting only errors. This allows the app to function much as it will in the real world, giving developers a better idea of how fast their app or enterprise solution will perform.

Server-side solution files

It is now possible to add a list of files to be deployed with a MobileTogether design to the MobileTogether Server directly in the design file itself - instead of copying the files manually. On deployment, the developer can choose to overwrite the files if they already exist on the server. Server-side solution files are specified on the Files tab.

New lock/unlock Action

This new Action enables clients running a solution to be locked from access to the MobileTogether Server while critical server-side changes are being carried out on the Server. After that, the developer can simply unlock server access and let clients continue their work or require all running clients to restart.

Please note that this Action requires MobileTogether Server Advanced Edition.

New Action to rename file/folder

This Action renames the selected file/folder on the client/server when the Action is executed.

Option to move deleted files to the Trash

The Delete File/Folder Action has been extended with the option to move deleted items to the Recycle Bin/Trash for systems that support this. This option is only available for the Server file system.

Option to move a deleted file to the trash or recycle bin

New option to switch theme via an Action

MobileTogether apps and solutions support switching themes, such as between dark and light displays, either defined during development in the project settings or based on the device’s default setting. Now there is a new Action for changing themes that will allow the end user to select the desired theme inside the app itself.

Comments in page sources

MobileTogether developers can now add comments for elements and attributes in page sources. This is very helpful for efficient app maintenance, especially within large projects.

Switching database connection during execution

It is now possible to choose the database file behind your app at runtime using a new Action called DB Switch Connection. This gives the developer the option to let the end user decide which database to use. The connection can be changed as many times as required.

This feature requires MobileTogether Server Advanced Edition.

Support for additional database versions

MobileTogether 8.0 adds for the newest versions of several databases, including:

  • IBM DB2 11.5.7
  • MySQL 8.0.28
  • MariaDB 10.6.5
  • SQLite 3.37
  • PostgreSQL 14.1

Support for Android 12 and iOS 15

Apps built in MobileTogether can take advantage of all the features and functionality in the latest versions of the Android and iOS operating systems.

Support for Windows 11

Both MobileTogether Designer and MobileTogether Server now support running on Windows 11.

Support for macOS Big Sur, macOS Monterey, and Linux Debian 11 (MobileTogether Server)

MobileTogether Server is now available for macOS Big Sur, macOS Monterey, and Linux Debian 11 in addition to previous versions.

New in MobileTogether 7.3

Support for in-app purchases

Starting with Version 7.3, you can enable in-app purchases in the native iOS, Android, and Windows apps you create in MobileTogether. Support is available for both one-time purchases and subscriptions.

This is a powerful new feature that allows you to monetize any apps you create with MobileTogether using the native App Store purchasing process on each platform.

In your MobileTogether design, you will define the interactions between your app and the app store to correctly transact an in-app purchase.

Features supporting in-app purchasing include new MobileTogether Actions and extension functions for defining what can be purchased, configuring events to occur when purchase states change, and querying available products.

The main interface between the MobileTogether design and app stores is the new In-App-Purchase Page Source, which can dynamically hold app store data about products and purchases that can then be used by your app.

MobileTogether 7.3 ships with a tutorial and sample app to get you started implementing in-app purchases in your apps quickly and easily.

Enabling in-app purchases in your iOS, Android, and Windows apps

The ability to include in-app purchasing in the apps you create in MobileTogether gives you even more options for building sophisticated, feature-rich apps that meet your business objectives while providing users with premium content and features.

Ability to embed MobileTogether Windows client in your own UWP app

It is now possible to integrate one or more MobileTogether solutions in a Universal Windows Platform (UWP) application using the universal MobileTogether Windows client. This way you can take advantage of MobileTogether for quick, easy development of sophisticated functionality and then integrate it seamlessly in another application.

This is a must for building more complex enterprise solutions on the Windows platform and gives you the ability to extend the functionality of your solution if the built-in controls and views provided by MobileTogether are not sufficient for your particular use-case.

A MobileTogether solution is placed in a UWP app via a new SolutionView control that Altova has introduced specially for this purpose. Each UWP app can integrate more than one MobileTogether solution, all of which can run at the same time.

Integrating the MobileTogether solution in a UWP app

To help you get started, the MobileTogether Designer installation contains an example C# project that shows how to use the SolutionView control in a simple UWP app.

Support for tooltips

When developing an app in MobileTogether you can now assign tooltips to controls such as buttons, labels, check boxes, etc., to provide end users with information before using the control. Tooltips are displayed to the end user on long-click on mobile devices and mouse-over on desktop devices.

Tooltips are defined in the Styles & Properties window of the control.

Android 11 support

Adding to support for previous versions of Android is compatibility with the latest version of the OS.

Support for additional database versions

In addition to previous versions of the databases listed below, support has been added for the most recent versions:

  • IBM DB2 for iSeries 7.4
  • IBM DB2 11.5
  • PostgreSQL 13
  • MySQL 8.0.25

New in MobileTogether 7.2

Version 7.2 of Altova MobileTogether was announced on December 15, 2020. Learn about all the new features below and update to the latest version.

Ability to switch themes (light/dark) in MobileTogether client

This new feature provides more flexibility for users in selecting between light and dark modes on the MobileTogether client app: they can now apply the system settings for their device or manually switch between light/dark themes.

New Action to add a log entry

The new Log Message Action makes it possible to log a customized message on the MobileTogether Server or client during the execution of an Action. This helps the developer analyze app behavior at a specific point.

A log entry can be generated based on the selected severity: info, warning, or error.

Log message on the mobile client or server

New button image: View

MobileTogether Designer includes more than 30 pre-defined button-looks that make it quick and easy for developers to add attractive icons for common tasks to their apps. This latest release adds a View button-look to the list.

Setting to change colors for pre-defined buttons

For increased flexibility in styling and refining an app UI, developers can now pick the color for any of the pre-defined button images that come with MobileTogether Designer.

Additional styles for slider controls

It is now possible to configure colors for slider controls, including the color of the slider track itself, the color of the thumb (the selector that moves the slider), and the color to display when the slider control is disabled.

Customizing the slider control for your mobile app

New function: mt-server-variable

This function makes it possible to configure different functionality when the same app is running on different servers, for instance, on a test vs. production server.

New function: mt-page-stack

This function returns a list of open pages. When a page calls a subpage, which then calls another subpage, the function will return the full list of pages. This is useful, for example, to allow a dialog to show different options depending on which page it was called from.

Support for dragging message/dialog boxes in web client

When you show a message box or a dialog in your app, it may overlap important information behind it. Now, the end user can easily drag the pop-up to a new location on the screen to see information behind it before deciding how to proceed.

Padding setting for table cells

It is now possible to set padding for table cells in addition to rows and columns. This makes it easier to precisely control the display of tables with different types of content (e.g., a mixture of text and images).

Syslog support in MobileTogether Server

Syslog is a standard protocol used to send system log or event messages to a specific server, called a syslog server. Developers often use a syslog server to collect logs from various machines in a central location for further analysis.

This is now supported as an option on MobileTogether Server Advanced Edition.

Backup/restore support for SQLite

For apps that connect to SQLite databases, a new Backup/Restore SQLite DB Action allows you to back up the SQLite database multiple times to a folder you designate. You can subsequently restore the SQLite database from one of these backups if required.

This functionality requires MobileTogether Server Advanced Edition.

New in MobileTogether 7.0

Version 7.0 of Altova MobileTogether was announced on July 14, 2020.

All new debugger

Debug mobile apps with MobileTogether debugger

Because MobileTogether is capable of building highly complex, elegant solutions, developers need the ability to troubleshoot during development to understand and debug app behavior.

Now, MobileTogether Designer offers full-featured debugging of both the execution flow inside action trees AND the results of XPath/XQuery functions called inside those trees. This is accomplished with two debugging views:

  • The Actions Debugger (shown above) – allows you to debug the Actions of a Control event or a Page event. This debugger is opened when an Action that has been selected for debugging is encountered during a simulation.
  • The XPath Debugger (shown below) - opens the XPath/XQuery evaluator window for in-depth debugging.

 

The MobileTogether Debugger runs during app simulation. A new toolbar in the Simulator window lets you enable debugging to stop at the next error, next breakpoint, or next Action during the simulation. Breakpoints can be configured prior to or during a debugging session and can be set on any number of Actions or XPath expressions.

 

When a stop point is reached, the appropriate debugging view opens and you can step through the execution of the Action or XPath expression.

 

During debugging, you can view the callstack of Actions, view how the values of variables are updated during the execution of Actions, and set watch expressions to test or investigate aspects of the Action execution.

Debugging XPath in MobileTogether

The new debugger in MobileTogether Designer gives developers the power to test and debug their apps with precision to immediately understand any app behavior - all directly in the low-code design environment.

Overwriting Control Template styles and actions at any instance

Introduced in MobileTogether 6.0, Control Templates are powerful design components that allow you to design and group multiple controls to be easily reused in different locations across the various pages and subpages of an app development project. Place Holder controls are used to add a Control Template in a desired location.

In this release Control Templates are even more flexible: it is now possible not only to reuse the templates, but to override or modify their behavior at different instances. The ability to reuse the existing template but modify it slightly saves tons of work and by letting you take advantage of existing resources.

 

You can modify the behavior of a Template Control in a specific location by selecting the corresponding Placeholder Control and then selecting Template Control Event Overrides from the right-click menu. This opens the Actions window, where you can modify the Control Template Actions for this particular instance only.

Overriding control template behavior at specific instance

The ability to modify Control Template behavior makes this powerful functionality even more flexible for efficiently re-using work to define sophisticated app functionality.

See an indepth how-to on working with control templates.

New Action: Update Variable

The new Update Variable action makes it possible for user-defined variables to be given new values during solution execution.

This offers more flexibility for data provided during app execution (calculations, user input, etc.) to be used as the values of variables. Previously these were stored in XML trees, but using variables is advantageous for many tasks because they can keep and modify maps, arrays, and other XQuery structures.

New scroll-to options

Additional options for scrolling let the developer scroll a specified row in a table to top, center, or bottom of the screen. This adds to the previous option of minimum scroll to bring the target into view.

Support for new units: dp/sp

Device-independent pixels (dp) and scale-independent pixels (sp) are now supported as the default units of measurement in MobileTogether designs. Apps built in MobileTogether will be used on a variety of OSes and devices of various sizes and resolutions, and these units allow for this, as well as users’ device settings, ensuring a consistent look and feel on any device.

Specifying size in dp makes it possible to define a display of the same size across devices that have different resolutions. Scale-independent pixels are the same as dp with an additional scaling factor that is based on the font size that the user selects in the device's system settings - as such, sp are used only as a unit for text-size.

In addition to support for dp/sp units, a new function called mt-convert-units lets you to convert between pixels and dp/sp.

New predefined button looks

new button icons for mobile apps

MobileTogether Designer includes a host of pre-defined button looks that make it quick and easy for developers to add attractive icons for common tasks to their apps. This latest release includes several additional options:

  • Stop
  • Snooze
  • Settings
  • Refresh
  • Print PDF
  • Print Word
  • Offline
  • Report
  • Opened tree
  • Closed tree

Edit Fields - new option to trigger control actions after time interval

Certain actions can be triggered based on data input by users. Now, to allow the app to more efficiently respond to what the user is typing, the developer can specify an interval of time, the default value being 500 ms, to wait after the last character is entered before executing the action. This allows the user to type easily without interruptions.

Localization of Services

A MobileTogether Service is a set of MobileTogether actions deployed to MobileTogether Server that can execute independently of any app running on a mobile device, based on a variety of triggers. For instance, a service could query a database based on some external criteria and perform an action such as sending a notification or an email.

With this release, the same localization options available for enterprise and app store apps have been extended to Services. Languages supported for localization include English, French, German, Japanese, and Spanish.

MobileTogether Server Advanced Edition is required for services.

New XPath function: chart

A more advanced alternative to the existing chart Control, this XPath expression offers a programmatic way to define charts via XPath when more flexibility is required, such as letting the user configure certain aspects of the chart, etc.

New in MobileTogether 6.0

Version 6.0 of Altova MobileTogether was announced on November 19, 2019.

Control Templates and Placeholder Controls
Support for dark/light modes
Ability to call Action Groups via XPath
Subpages now have parameters
Local variables in Action Groups, Sub Pages, Templates
New Action to execute a FlowForce job
New Action: Break loop
Option to install MobileTogether Server without sample apps
Option to deploy package via MobileTogether Server command line
New option for restarting apps/solutions
Support for split-screen on Android
Resizing of RichEdit control based on content
New XPath functions to convert JSON trees to/from string
New image buttons for Undo/Redo, Cut/Copy/Paste
Ability to specify order of database commands on save (delete, update, insert)
Support for additional database versions
Support for strikethrough text in Labels

Control Templates & Placeholder Controls

A major breakthrough in dynamic design for MobileTogether apps, Control Templates and Placeholder Controls facilitate design reuse and make it easy to implement efficient, flexible options for various scenarios.

A Control Template is a new design component that allows you to design and group several other controls in a way that makes this group of controls easily reusable on multiple other pages. Control Templates support parameters, and each template can be reused in different locations across the various pages and subpages of an app development project.

Control Templates provide flexibility by allowing you to:

  • Create multiple Control Templates in one project
  • Reuse a Control Template at different locations in the design
  • Change the design of a page by switching templates
  • Select a template based on runtime conditions or user input
  • Modify the contents of a template based on runtime conditions or user input

A Placeholder Control is used to place a Control Template at a desired location on a page. You can use multiple Placeholder Controls to place a Control Template at multiple locations.

There are countless ways this new functionality can be applied. For example, you can show an edit field for editable content and a read-only label for the same content, based on the app user permissions. This removes the necessity to design different input forms for different users - the form itself can change. Or, you can show different Controls at the same location, depending on the situation.

The simple example below shows a Control Template that defines a set of dynamic horizontal radio buttons. This portion of the app asks users to first select their continent, followed by their country and city, values for which are shown dynamically based on the previous selection.

Control templates for easy reuse in MobileTogether

Control Templates and Placeholder Controls represent a major step forward in elegant app design by enabling easy reuse and enhancing flexibility.

To help developers get started quickly with these powerful features, MobileTogether Designer 6.0 ships with four example projects that highlight defining, implementing, and reusing Control Templates and Placeholder Controls.

Support for light/dark modes

With the release of Android 10 and iOS 13, dark mode is enjoying a resurgence in popularity for a variety of reasons, from increased battery life to decreased eye strain caused by bright screens.

 

MobileTogether 6.0 gives app developers the ability to force light or dark mode for their apps, or detect the user’s preferred mode based on the device system settings.

Enabling dark theme during app development

Ability to call Action Groups via XPath

MobileTogether Action Groups define a series of actions to execute with an app. Once defined, an Action Group can be reused throughout a project. With the ability to pass Action Group names and parameters via XPath, the Action Group to be executed in a particular scenario can be determined dynamically at run time (for example, by getting the name of the Action Group to execute from a page-source node, based on the device OS, desktop vs. mobile devices, and so on), providing additional flexibility for closely customizing app behavior.

Parameters for Subpages

You can now pass parameters to the sub-page to control how the subpage performs in various conditions, helping to further enable efficient dynamic design. Since subpages can include all UI features, parameters essentially help the developer treat a subpage like an Action Group call with a UI.

You can declare parameters and variables for a subpage by clicking its Add Parameters/Variables button.

Local variables in Action Groups, Subpages, Templates

Now, in addition to global variables, MobileTogether supports local variables that only exist within the scope of the current function for calculations you don’t need elsewhere.

Support for local variables in Action Groups, subpages, and templates is another feature added to this release that offers advanced programming functionality to MobileTogether developers.

Local variables in MobileTogether app development

Action to execute a FlowForce job

Through integration among Altova high-performance server software offerings, FlowForce Server jobs can be triggered by MobileTogether apps. For instance, a FlowForce job might execute a complex data mapping that calculates real-time sales report figures, then delivers the report instantly to the MobileTogether app user in a beautiful, native-client form.

Now, in addition to specifying a FlowForce job as a data source, developers can execute such jobs via Actions. This simplifies calling FlowForce, especially when passing parameters.

New Action: break loop

This new Action makes it easier to break a loop during execution of an action script. Previously, the Break-loop-if Action required the developer to specify conditions for breaking a loop. Now, it’s possible to break a loop immediately and proceed to the next statement following the loop.

New option to restart an app/solution

There is a new extension to the Solution Execution Action that allows the developer to specify when to restart a solution – for example when switching languages or databases – without requiring user intervention. For browser-based solutions, the app can either be restarted completely or a new copy can be started in a new tab.

Support for split-screen on Android

On devices running Android 7 or higher, apps can be shown in split screen mode, e.g., with one app running in the top half of the device screen and another in the bottom half. MobileTogether apps now support running in this manner.

New image buttons for Undo/Redo, Cut/Copy/Paste

App designers can add custom icons and images to any button, and MobileTogether also ships with a collection of ready-made images for the most common button operations (e.g., email, fast forward, calendar, etc.).

 

In Version 6.0 new, easily recognizable images are available for undo/redo, cut, copy, and paste.

Ability to specify order of database commands (delete, update, insert) on Save

When saving data to a database, it is often important to control the order in which delete, update, and insert statements will be executed. This is now supported in MobileTogether 6.0.

Support for additional database versions

MobileTogether apps can connect to all popular relational databases. In this release support has been updated to include the latest versions of several, as follows:

  • SQL Server 2019
  • Access 2019
  • Oracle 18 and 19

New in MobileTogether 5.4

Version 5.4 of Altova MobileTogether was announced on June 12, 2019.

Geolocation Map Control
Record-video Action

Geolocation Map Control

Adding to existing geolocation functionality in MobileTogether, a new Geolocation Map control lets developers display a map directly in their app. The map can display the street, satellite, or hybrid view of the specified geographic area. Points of interest in the area can be shown by different colored markers in the map.

Viewport, Control Width, and Control Height properties provide flexibility for controlling how the map is displayed.

The control has a OnGeoMapMarkerClicked event, which lets the app developer define actions to perform when a particular marker is clicked by the user.

Add a map to your app with the geolocation control in MobileTogether

New variables and extension functions have been created to support map functionality:

  • $MT_GeolocationMapMarker: dynamic variable that contains information about the marker last clicked or tapped by the user
  • mt-geo-map-marker: creates a marker on a map
  • geolocations-bounding-rectangle: creates a bounding rectangle around a set of submitted geolocations

Record-video Action

The new Record-video Action makes it possible to record video from a MobileTogether app.

Developers can define triggers that start the device’s video recording app and specify:

  • The name and location of the video file to save when the recording ends
  • The maximum recording duration or file size
  • The picture quality of the video recording
Record video in your app

Video recording adds to existing functionality for playing videos in an app built with MobileTogether.

New in MobileTogether 5.1

Version 5.1 of Altova MobileTogether was announced on February 27, 2019. Learn about all the new features below.

MobileTogether Clients
Support for Android 8.1 and 9
MobileTogether Designer
Ability to detect links in labels and make them clickable
Option to restrict label height to N lines
Action Tree for the event of page orientation change
New options for Read Folder Action
MobileTogether Server
Full support for free Let’s Encrypt SSL certificates

Support for Android 8.1 and 9

Support has been added for building apps that include the native look, feel, and functionality of these latest Android versions.

Starting with MobileTogether 5.1, developers have an option to automatically display web page URLs and email addresses in Labels as live links. Clicking or tapping the link opens the targeted website page in a browser or a new email in the device's email app.

Automatic link detection is configured in the Styles & Properties pane and can be set to:

  • None: links are not auto-detected
  • Explicit links: the developer can set the property to only create live links when the text fragment starts with http://, https://, rtsp://, or mailto:
  • All links: any text that indicates a page URL or email URL is automatically detected to be a link, for example, www.altova.com, altova.com, niki@nanonull.com, etc.
Auto-detect hyperlinks in an app

Option to restrict label height to N lines

Now, in addition to configuring a Label control to display multiple lines of text, the developer can set a maximum number of lines to be displayed, providing even more flexibility when designing an app UI.

Action Tree for orientation change

The OnPageRefresh event of each page in an app now has a new option: refresh due to orientation or size change.

This makes it possible to define actions to occur when the user changes the orientation (portrait/landscape) of the device, as well as when the he/she re-sizes the app window. (The latter is only applicable to devices that support resizing the app window, such as a desktop or laptop running a MobileTogether Windows client.)

Action Tree for orientation change

New options for Read Folder Action

Now, in addition to retrieving a list of files and sub folders from a folder on the MobileTogether Server or client at runtime, options have been added to allow:

  • Multiple filename patterns to be specified in the action's file filter
  • Recursing into subfolders
  • When recursing into subfolders is specified, the ability to read the information of empty folders
Read folder options

Full support for free Let’s Encrypt SLL Certificates

MobileTogether supports secured SSL connections between MobileTogether Server and client devices running MobileTogether apps. Now, in addition to allowing you to upload a certificate purchased from a certificate authority, MobileTogether Server makes it easy to obtain and auto-renew a free SSL certificate from Let’s Encrypt directly in the MobileTogether Server admin interface.

Let’s Encrypt is a certificate authority created by the Internet Security Research Group (ISRG) to provide free digital certificates to enable HTTPS (SSL/TLS) connections. With the stated goal to create a more secure Internet, the IRSG provides certificates at no charge and strives to make the process as easy as possible. As such, software running on a web server can interact with Let’s Encrypt to obtain a certificate, securely configure it for use, and automatically renew the certificate when required. Let’s Encrypt certificates are valid for 90 days and may be renewed at any time during that period.

A new dialog makes it easy to request a free SSL certificate from Let’s Encrypt, directly in the MobileTogether Server admin interface. Once the certificate is obtained and installed, MobileTogether Server will automatically renew the certificate every two months.

We've prepared a short demo video showing how easy it is to request an SSL certificate from Let's Encrypt in MobileTogether Server.

Automatically receive and renew Let's Encrypt SSL certificates

New in MobileTogether 5.0

Version 5.0 of Altova MobileTogether was announced on November 7, 2018. Learn about all the new features below.

MobileTogether Clients
Major rewrite of MobileTogether web client
Android 8 support
MobileTogether Server
Support for authentication via any LDAP server
Automated backup of the MobileTogether Server internal database (Advanced Edition)

Major rewrite of MobileTogether Web client

In MobileTogether 5.0, the web browser client has been completely rewritten with a fresh, modern look. Controls and icons have been redesigned, and overall the UI of your web apps will be more crisp, clean, and attractive.

While MobileTogether is best known as a rapid mobile application development (RMAD) framework for iOS, Android, and Windows apps, the platform is equally well suited for building sophisticated web applications.

Because MobileTogether lets you build apps very quickly using a low code approach, it makes it possible for in-house web developers, citizen developers, and power users to rapidly build data-intensive web apps and deploy them instantly over enterprise intranets or the Internet.

MobileTogether web app

Opting for a web app has numerous benefits. Because the app is available in any web browser, users don’t need to have a client app pre-installed on their device or computer, making deployment easy in large organizations as well as for customer-facing apps. There’s nothing to download: users simply access your app via URL. Of course, security options are available as required. All of these factors make life easier for enterprise IT departments and end-users alike.

Because a single design in MobileTogether Designer generates native apps for all platforms as well as a web app, the same functionality and sophistication available for building custom, feature-rich mobile apps is extended to developing web apps for any industry or purpose.

New in MobileTogether Designer

Support for borders in tables

MobileTogether provides numerous options for tables, including new support for adding borders to tables, rows, columns and cells.

There are two ways to define border properties: in the Styles and Properties entry helper window or in a new Border Settings window that makes it easy to configure multiple border properties at once using familiar formatting menus and buttons. As you work, affected table elements are highlighted and you can see the result of every change immediately.

This frequently-requested functionality makes it easier to define and style tables with flexible options.

Configuring app table borders in MobileTogether

Support for padding

In addition to defining margins, MobileTogether developers can now add padding to relevant controls. Padding adds space between a control’s content and the inside edge of the control. Using the Styles and Properties entry helper, you can set padding for a control with a single value for all sides of the control’s content or configure it separately for left, right, top, and bottom.

Buttons with images and text

To bring even more flexibility to UI design, you can now assign both an image and text to any button control. To add an image to a button, choose from a collection of predefined images or upload your own. You can also configure the image to be to the right or left of the button text.

Buttons with images and text in MobileTogether

Options for text auto-fit

It is now possible to set the text size to automatically fit the text, which means that the font will be made smaller automatically if the text doesn't fit the available width. This way, developers can ensure that apps will be readable and attractive on a wide variety of devices and screen resolutions. It is also possible to group multiple controls on a page to have the same automatically-determined text size, so that the overall design is adapted consistently.

Ellipsis display for long text

In addition to the text auto-fit option described above, developers can configure controls that have text to display an ellipsis if the text doesn’t fit the width of the control. This again ensures that the UI will look good on all form factors and also helps account for differences in localized versions of your app, where some words may be longer or shorter depending on the current language.

Copy/paste for project stylesheets

MobileTogether Designer includes project stylesheets that make it easy to define global styles that can be applied at the project, page, table, and control level. It is now possible to copy an existing stylesheet and paste it into a new one, which makes it faster and easier to start a new stylesheet based on previously defined styles.

You can paste stylesheets to copy styles in the same app or in another app design file – a huge time saver.

Copy/paste app styles

Load/Save to and from text files

Now, in addition to support for data in XML, HTML, and JSON formats, MobileTogether supports reading and writing to plain text files. A new action called Load/Save Text File makes it easy to specify the required node and text file as well as error handling options.

Support for sending files and binary data via REST interface

In response to customer requests, MobileTogether apps now have the ability to send files and binary data with HTTP requests using the REST interface.

New functions

MobileTogether 5.0 introduces several new functions for designing sophisticated app behavior, described below.

mt-get-page-source-structure

When creating new data trees or their parts, it is now possible to use the definition of a page source to create the structure automatically.

create-hash-from-string

This function creates a hash string from any text using different hashing algorithms. This is important, for example, to avoid saving user passwords in plain text.

mt-table-rowgroup-count & mt-table-rowgroup-index

These new functions can be used in tables with repeating rows, for example, to display the table with alternate row colors based on the index, as shown to the right.

mt-called-by-enter-key & mt-called-by-escape-key

In certain scenarios it’s useful for the developer to determine app behavior based on whether a button was activated with a touch on a mobile device or by the user pressing the escape or enter key on his/her keyboard. Now, it's easy to design app behavior for any of these scenarios.

New rowgroup functions

Database structure retrieval

It is now possible to retrieve a database structure during runtime.

A new action, DB Read Structure, enables the structure of a database to be read and for data in the database to be stored in a new $MT_DBSTRUCTURE page source. Data in this page source can be used in the same way as data in any other page source.

This functionality makes it possible to create sophisticated apps that read the database structures of unknown databases on the fly and is most applicable to IT-focused apps.

Support for new database versions

MobileTogether apps can now connect to the latest versions of these databases:

  • Firebird 3
  • Informix 12.10
  • MariaDb 10.3
  • Microsoft SQL Server 2017
  • MySQL 8
  • PostgreSQL 10

Global find & replace

To make developing and refactoring complex apps easier, MobileTogether 5.0 introduces a new Find & Replace Pane for searching for and/or replacing strings in XPath expressions, functions, and action groups in a design. Searching using regular expressions is also supported.

For quick navigation, search results are hyperlinked to the relevant objects in your design.

Find/replace

New in MobileTogether Server

Support for authentication via any LDAP server

Adding to support for authentication via Active Directory integration, MobileTogether Server now also supports LDAP.

Automated backup of the MobileTogether Server internal database (Advanced Edition)

It is important to back up the internal database for MobileTogether Server periodically. Now, the process can be fully automated, and the server administrator can configure automatic backups to occur as required.

 

 

 

MobileTogether 4.1

Version 4.1 of Altova MobileTogether was announced on February 27, 2018.

Support for services (UI-less solutions that run on the server)
Read / write to device calendars
Ability to use Outlook contacts and calendar during simulation
Rich text control
Pop-up windows
New action: Save/restore Page Sources
New action: Delete Append Node
New property: Text Size Auto-fit
Multi-select combo box
New style: Enforce light theme
Ability to specify tab ordering for Windows and Web clients
Defining a default action for Enter/Escape buttons on Windows and Web clients
Automated tests per user / device
Support for additional databases: Teradata and MariaDB
New XPath functions
64-bit support for Android
New in MobileTogether Server
New MobileTogether Server Advanced Edition with services support
New predefined “admin” user role
Ability to move/rename existing containers and solutions in WebUI
Logging of server settings changes

Support for services

Services are solutions with no UI that are built in MobileTogether Designer and run on the customer’s MobileTogether Server to provide background functionality to other apps.

Service built in MobileTogether Designer

Once a service is deployed to the customer’s MobileTogether Server, various triggers such as time, file system events, and so forth can be defined to trigger the service to run. For instance, a service could be defined to monitor the Orders table in a sales database and trigger an action - such as sending a notification in an app, sending email to one or more recipients, and so forth - when an order arrives in the table. Another example is using a service to check XML feeds from a web site and send a notification to users when updates or changes are available.

Services offer MobileTogether developers another layer of sophistication for adding real-time functionality to their data-driven apps.

Please note that services require use of the new MobileTogether Server Advanced Edition, described in more detail below.

Read / write to device calendars

For developing apps that include scheduling functionality, this new calendar action provides rich integration with the calendar(s) on the user’s device. Support is provided for accessing multiple calendars to read events as well as to write events to a calendar. Specific functionality includes:

  • Read all calendars (information about the calendars on the user’s device)
  • Read calendar events (information about events scheduled during a given timeframe)
  • Write to calendar (opens an event in the user’s calendar app with prefilled information; user may edit and save the entry)

When the Access Calendar action is added to an app design, the $MT_CALENDAR data source tree is automatically added, allowing the app developer access to information for detecting scheduling conflicts and enabling the user to seamlessly add events to his device calendars.

MobileTogether access calendar action

Ability to use Outlook contacts and calendar for simulation

During app simulation in MobileTogether Designer, it’s now possible to use the Outlook contacts manager for testing apps with email sending functionality. Outlook Calendars may also be used during simulation of the new Calendar action described above.

Rich text control

This new control allows developers to implement solutions that support rich text: text that includes formatting such as font sizes, bold, and italics. This support is especially important for MobileTogether solutions used in the Windows client and the web browser, where users can enter and format rich text. For Android, iOS, and Windows Phone devices, the rich text control is read-only.

Rich Text control

Rich text support was the final requirement for customers successfully transitioning their Altova Authentic Browser Edition solutions to MobileTogether for desktop and web browser access.

Authentic has long been available as a browser plug-in in addition to a desktop application. However, the more recent versions of popular browsers are discontinuing support for NPAPI and ActiveX and are in the process of ending support for browser plug-ins altogether.

Luckily, customers have a path to continue using existing Authentic forms built in StyleVision by exporting a StyleVision design file to a MobileTogether design as the starting point for a new app. Completed MobileTogether solutions can be accessed easily in a web browser – but without the need for a plug-in.

With added support for rich text, Authentic developers and end users will have access to all the same functionality - and more - using MobileTogether.

Pop-up windows

Often times it makes sense to deliver a notification or let an end user complete a simple task via a pop-up dialog window that doesn’t interrupt the user’s progress by taking up the whole device screen.

This new support makes configuring a pop up window as easy as defining a sub-page as a modal dialog in the app design. The app developer specifies the height and width of the pop-up window in the “Go to Subpage” action. During app execution, the pop-up will open in a window on top of the main page, allowing the user to receive the notification or complete the dialog before proceeding.

Modal pop up window in mobile app

New action: Save/Restore Page Sources

This new action makes it much easier to define when and how data is changed by a user’s input, and to roll back to the previously saved data when necessary. The developer can now easily define when to save a page source temporarily, and then to accept or discard further modifications depending on a user’s subsequent actions.

For instance, as an end user is filling in a mobile form, the app can save page sources before entering a sub page. Then, depending on what happens next, the app can continue with the changed data (and therefore discard the saved page sources) or roll back to restore the previously saved page sources.

This is helpful, for example, when a user decides to cancel before submitting a completed form or abandons a process before it’s complete.

This new action also allows developers to implement a transaction mechanism similar to transactions in a database.

save/restore page sources

New action: Delete Append Node

The Delete Append Node action makes it possible to delete sub-nodes from a given node in a page source, and then add new node(s) to the same target node, either as the first child or last child.

New property: Text Size Auto-fit

Controls that have a Text Size property now also have a Text Size Auto-Fit option, which enables longer text to be re-sized to fit the width of the control.

Multi-select combo boxes

A combo box normally offers a choice of multiple options, of which only one may be selected. In MobileTogether 4.1, the combo box control has been enhanced with the option to allow an end user to select multiple values at once.

This is easily configured by setting the multi-select property to "true" in the Properties entry helper window.

Multi-select combo box in MobileTogether app

New style: Enforce Light Theme

Newer Android and Windows devices now have their default theme set to the light background with dark text long used by iPhones and iPads. The new Enforce Light Theme style in MobileTogether helps developers easily extend this theme to older Android and Windows Phone clients. This saves significant development time and results in better performance because the styles don’t have to be applied individually at runtime.

Simply set Enforce Light Theme to true in the Styles & Properties entry helper to apply the theme project-wide. When Ensure Light Theme is set to false, the default theme of the user’s device is used.

Ability to specify tab ordering for web and Windows

This makes it possible to specify the order in which controls are selected when a user taps the Tab button.

Users on desktop and laptop devices are used to hitting Tab to move to the next field in a form, for instance, and this gives developers better control for creating the expected user experience and controlling how they navigate through a page.

Define tab order

Ability to set a default enter/escape control for web and Windows

Controls that have an OnClicked event (buttons, charts, images, and labels) can have their click events triggered via the client's Enter or Escape key in a Windows app or web browser.

Like defining Tab behavior described above, app developers can specify which control should be activated when a user presses Enter or Escape.

Automated tests per user / device

Now, during automated testing, the developer can specify a test version of apps to run only on specific devices or only for specific users. This is a great way to allow a QA team to test a new version of your app without affecting existing users.

Support for additional databases

MobileTogether supports numerous popular back end database types, with additonal new support for:

  • Teradata 16
  • MariaDB 10

New XPath functions

New MobileTogether XPath extension functions include:

  • mt-image-width-and-height: Get the dimensions of the submitted Base64-encoded image
  • generate-guid: Generate globally unique identifier

New in MobileTogether Server 4.1

New MobileTogether Server Advanced Edition

Version 4.1 includes a new edition of MobileTogether Server that provides additional features for the most sophisticated app development scenarios.

The debut release of MobileTogether Server Advanced Edition provides support for managing and running services, which, as described at the top of this page, are solutions with no UI that run in the background according to predefined triggers.

Once a service is defined in MobileTogether Designer, it is deployed to the customer’s MobileTogether Server, where the administrator can configure the service to start automatically according to a customizable system of triggers. These include including time triggers, file system triggers, HTTP triggers, or a combination of multiple criteria.

Services configured on MobileTogether Server

New predefined “admin” user role

The new admin role for MobileTogether Server makes it faster and easier to add multiple users to the role.

Ability to move/rename existing containers and solutions in Web UI

It’s now possible to rename solutions or move them into different folders via the MobileTogether Server web interface.

This functionality is only relevant for enterprise apps – compiled app store apps should not be moved or renamed.

Logging of server settings changes

Now all changes to server settings will also be logged, making it easier to track changes and troubleshoot any resulting issues.

New in Version 4.0 of MobileTogether

MobileTogether 4.0

Version 4.0 of Altova MobileTogether was announced on November 7, 2017. Learn about all the new features below.

Support for Push Notifications
Support for embedding a MobileTogether solution in a web application
New action: Load/Save String
New action: Read Folder
New action: Set Language
New action: MapForce Transfer
Updated Android support for Android 6.0, 7.0, 7.1
Support for PostgreSQL 9.6
Server usage statistics app

Support for Push Notifications

MobileTogether 4.0 introduces the ability to send push notifications to one or multiple devices running MobileTogether apps. Users are familiar with receiving push notifications that provide information, such as news related to the app, and they can also be used to drive actions, such as accepting invitations, linking to a website, or modifying a database.

MobileTogether push notifications can include a short message, a “big” message, and a payload consisting of data structured as key–value pairs. Typically, the short message is what is displayed on the device when the notification is received. When the user taps the short notification, the big message is displayed in the notification area.

Messages can have buttons that allow the user to determine what action to take when the message is received. The payload of the notification is transferred to a data tree on the device and can be used by other actions; this enables new data related to the notification event to be freely processed by the whole range of MobileTogether actions and used with MobileTogether controls.

Defining a push notification

Deciding which devices receive a particular push notification is highly configurable. For instance, it can be sent to specific users (defined by name or role) or all users of an app. It may also be sent to users that have subscribed to receive news about specific topics (e.g., news, travel, etc.).

These flexible options for implementing push notifications give MobileTogether app developers yet another tool for building today’s most sophisticated apps.

Support for Embedding a MobileTogether Solution in a Web Application

This functionality allows developers to embed one or more MobileTogether solutions directly in a web page to, for example, enable web-based form applications. Once the solution is embedded, data can be exchanged easily between the web page and its embedded MobileTogether solution using JavaScript.

The MobileTogether solution itself interacts with MobileTogether Server as usual and receives data that can then be communicated back and forth with the web application.

Embed MobileTogether app in web page

MobileTogether apps are embedded via an iFrame element in the HTML code of the web page, and multiple options for user or device authentication are available, if required.

Mobile app embedded in web app

This functionality has been requested by several customers and now makes MobileTogether even more useful for browser deployment and web development.

New Action: Load/Save String

This new action pair is particularly applicable for use when embedding MobileTogether app solutions in other web applications, as described above. The Load from String action can take the XML or JSON string and generate a page source. Conversely, an XML/JSON page source can be serialized to a string with the Save to String action and stored in a page source node.

New Action: Read Folder

This new action makes it possible to retrieve a list of files and sub folders from a folder on the MobileTogether Server or client at runtime. This is important when the folder structure is not known to the app.

New Action: Set Language

When a MobileTogether app is available in multiple languages, the language selection is set based on the default language of the device operating system. This new action makes it possible for the language of the app to be manually changed by the user. This way, the app can be restarted in an alternative language when desired, for instance, if you’re traveling abroad or communicating in an app with users who don’t speak the same language you’re using on your device.

You can see this action already in use in the Altova Group & Gather app, which is available in five languages. Users can switch back and forth as needed.

Set language in mobile app

New Action: MapForce Transfer

Altova MapForce Server provides high-speed automation of data mapping projects defined in the MapForce data integration tool. With this new action, it is now possible to call MapForce Server directly from MobileTogether Server to perform data transformations required by an app.

The MapForce Transfer action enables one set of data structures to be converted (mapped) to a second set of data structures. Each data structure of the output set can be written to a file or to a node of a page data source in the MobileTogether app design.

Because MapForce supports EDI, XBRL, flat files, Excel, Web services, and other data formats in addition to XML, JSON, and relational databases, this new action lets MobileTogether apps now utilize a wider range of legacy and other back end data sources.

To enable this functionality, MapForce Server must be installed on the same machine as the customer’s MobileTogether Server.

data-integration-mobile

Server Usage Statistics App

The MobileTogether Server 4.0 installation includes a powerful app for the server administrator that displays various statistics about individual solutions running on that server.

The Statistics app presents stats and charts on numbers of users, devices, app starts, server requests, and more, in a selected time frame. Granular filters allow you to view these stats per operating system, device type, or manufacturer; per app; and so on. You can also see stats on request counts and app starts.

The app has three tabs:

  • Users/Devices/Requests
  • Usage by time of day
  • OS/Manufacturer/Platform/Device kind

Each tab provides filters that let you customize the report.

MobileTogether statistics app

This new app makes it easy to get an accurate view of the usage and popularity of each app on your MobileTogether Server.

New Features in Previous Versions

Learn about all the additional capabilities that have been added in each MobileTogether release.

Version 3.2 (May 10, 2017)
Near Field Communication:
Support for NFC messages
New Actions:
Ability to access mobile device contacts
Text to speech
Wait cursor and optional message
Actions for date and time pickers
Get file info
View and image full screen
Enhancements to Existing Actions:
Pre-defined sounds for common scenarios
Support for reply-to in emails
Significantly extended scroll-to action
Goto page/subpage via XPath
New Features for Tables:
Dynamic table growth: left to right
On-demand loading of tables
Additional Features:
New pre-defined button looks
Support for JSON5
Numerous chart enhancements
Improvements in Browser execution
Single-thread execution option for MobileTogether Server
Version 3.0 (October 10, 2016)
Support for barcodes
Multi-level style sheets
Automated testing facility - to record and re-run tests in Designer and on clients
New action: print to PDF, Word, or RTF from client
Ability to open files (e.g., PDF) on client
Significant speed increase for Windows and Windows Phone client
Completely re-written browser client
Version 2.2 (May 31, 2016)
New action for recording audio
New action to play audio
New action to play video
A new control to embed video within an app
Audio and video XQuery extension functions
A new Simulator feature for LAN connections
End-user file dialog
Enhanced context menu for tables
Version 2.1 (April 4, 2016)
Completely new pricing
New control: Slider
New control: Vertical line
New button looks: Share and Email
New action: Share. Familiar option for sharing via Facebook, Email, Messaging, etc. apps
New action: DB Bulk Insert Into. For quickly inserting multiple rows into a database at once – speeds up to 100x faster *
New action: Let. Allows definition of temporary variables in action trees
New action: Return. Allows an action group to return a result of any complexity; action group can act as a programming subroutine
Subpages: possibility to return result on close (in conjunction with Let action)
Action groups: possibility to pass parameters (and even other action groups) to an action group
New action: Try/Catch. For sophisticated error handling and recovery
New action: Throw. As part of the Try/Catch action, Throw allows definition of exception conditions
New action: Cancel Action Execution. For example, at a validation error in user-entered data
New action: Scroll to Table Bottom. For example, when adding new rows to a scrollable table
New action: Load Image. Load an image for further processing, for instance to transfer to a database
New action: Show Route. Adds to geolocation functionality; show a route between two points
New Action: Loading/saving files on client devices. Users can save files / share between apps on device
Creating folders automatically when saving files on client or server. When saving to a folder that doesn't exist, it can be created
New action: Delete Files/Folders. As permitted by the client operating system or server administrator
New action: Restart/Stop Page Timer. Interrupt the page timer and even reset the timer interval
New action: User Cancel Behavior. More flexibility for letting user cancel at predefined safe locations
Flexibility to set some existing properties via XPath
New property: text size in pixels
New XPath function: mt-connected-via-wifi
New XPath function: mt-font-height
New XPath function: mt-control-width
New XPath function: mt-user-tried-to-cancel-actions
Quick search in XPath function dialog
New option to hide page title bar
Customizable login/index page for browser client
Speed up of app starts when connection is slow
New keyboard style: Visible Password
New demo app: MyCollections
Version 2.0 (November 10, 2015)
Build your own AppStore Apps
New server licensing option: per server core
Support for REST and SOAP Web services
Support for JSON data
Support for Firebird databases
Other supported databases updated to include newest versions
Parallel processing of multiple solutions
Signature / simple drawing control
Load/save files with filename calculated via XPath
Simulate missing Server access
Support for Windows 10
Support for Windows 10 Edge Browser
New XPath functions for color handling
Support for multiple languages: English, German, French, Japanese, Spanish
New flag for source trees: Keep data on client
New page action: OnServerConnectionError
Version 1.5 (April 28, 2015)
Send emails to one or more recipients and optionally include attachments
Action loops for repeated execution of a sequence of actions
Start app solution via a link that includes parameters (can also send link via email functionality above)
OnClick vs. OnLongClick
Hide keyboard
Update display during execution of a series of actions
Automatic save for database tables without primary keys
Execute actions on typing in the Browser
Support for Radio Buttons as an alternative to On/Off Switch controls
New horizontal line properties for dashed and dotted lines
Button Look properties to add symbols to buttons
Support for user CSS and font files for solutions running in Web browser windows
A property to set any control width as a percent of screen width
Unified data types for relational database tables
Optionally remove source nodes that are inserted by Append/Insert node action
Multiple versions of the same solution may coexist on server to accommodate outdated client apps
MobileTogether Client configuration may be sent via email link to simplify set-up for end users
Several convenient and time-saving editing shortcuts have been added to the MobileTogether Designer
Version 1.4 (February 2, 2015)
Robust support for geolocation services
Support for Android version 5.0
Support for XPath and XQuery 3.1 (adds to support for previous versions)
String localization (enhances existing support for localization)
Support for additional specific headers in HTTP requests
Feature allowing one MobileTogether solution to start another solution when it terminates
iOS 7/8 rendering in the Simulator portion of the MobileTogether Designer
Ability to edit the XML tree directly in the Simulator
Additional refactoring support
Display versions of connected clients on the MobileTogether Server
MobileTogether Commercial Release (November 10, 2014)
MobileTogether Server available for Linux and MacOS, in addition to Windows
New action: Let User Choose Image from gallery or camera
Image embedding
New action: Save Image to File
New action: Execute on Server/Client
New XPath functions for image processing
New XPath functions for geolocation processing
Additional new XPath functions
MobileTogether Beta 2 (September 17, 2014)
Support for SQLite databases
Support for dynamic SELECT statements fully generated with XPath/XQuery)
Automatic retrieval of auto-number primary key after Save action to database
Support for data retrieval in DB Execute action
Support for user authentication via Windows Active Directory
Support for user to choose his/her own password in client
Support for user to change his/her password on first login
Auto-correcting HTML parser
Mobile Apps translated to German, Spanish, Japanese
New variables: $MT_ButtonBackgroundColor, $MT_ButtonTextColor, $MT_EditFieldBackgroundColor, $MT_EditFieldTextColor, $MT_LabelBackgroundColor, $MT_DBExecute_Result, $MT_SimulationMode
New functions: mt-has-serveraccess, mt-refresh-userroles, mt-external-error-code, mt-external-error-text
MobileTogether Beta (July 22, 2014)
MobileTogether is made available as a public beta.
Update
Existing customers may update to the latest version here
Download
Download the free MobileTogether Designer to try MobileTogether now!