App Links & Launch Options

App Links & Launch Options

Our App Links functionality allows us to launch Apps directly into specific Screens using unique URLs similar to web links.

These links can be emailed or otherwise passed to other app users. They will launch the app when the user taps or clicks on it (assuming the app is already installed).

An App Link looks something like this: app://somescreen?myfield=somevalue

We also support app launching capability via an Android NFC scan, so you can tap an NFC tag and launch your app based on what is read off the tag.

Launch Options

Navigate the Side Menu > Design Tools > App Setup > Launch Options.



On the Launch Options page, you can create launch rules and app links to launch the app directly onto specified screens. On the top right of the page, hover over Manage and Add Launch Rule to create an App Link.

The incoming app link has two parts to it.

First is the URL scheme, the part before the :// piece.  This will vary depending on whether you are using our standard app or your own branded version of our native app technology. Either way, this part is fixed and will not change – it’s simply part of the app links you create.

The second editable portion is significant because the app extracts this piece and then evaluates it against the Rules you specify to determine what Screen to launch into. If no rules match the incoming value, the app defaults to launching the start screen.

We recommend using the target Screen name to make your app links more descriptive.
e.g., app://inspection

App links can include parameters by using query string syntax.

e.g. app://inspection?site=1234&condition=2.

Where site is the first parameter’s name, and 1234 is its value.

How to Separate URL Parameters with ? and &

The first parameter requires a ‘?’ in front, and subsequent parameter sets must be separated with an ‘&’.

Screen to Open

This is the target app Screen, which will be opened if the Launch Value matches the incoming app link and the optional Conditional Formula is empty or evaluates to true.

Screen Parameters (optional)

Pass launch parameter values into the target Screen using {{parameterName}} syntax. 

For Form targets, you can preset target fields with ‘dataname:value’, pipe-separated. 

e.g. field1:{{city}}|field4:{{hello}}

For Listing & Mapping targets, you can pass in a formula to filter the target rows. Use {{target[column]}} for target columns. 

e.g. {{target[3]}} >= {{price}}

For Detail targets, pass a value to match the first column of the target data row. 

e.g. {{mychoice}}

Best Practices for Prepopulating Fields Using Parameters

The ability to pass parameters and prepopulate fields in a launched screen is best suited to fields that aren’t mapped to or driven by a data source.

If a field is mapped (Text/Numeric/Choices Field, etc.) or driven from a data source, it’s best to pass a parameter to a hidden field and then reference the hidden field’s {{dataname}} in the dynamic value of the field that needs to be prepopulated.

Conditional Formula (optional)

In most scenarios, the app link alone will be distinct enough to define your Launch Rule.

However, in some cases, you may want the same app link and may need to launch one of several Screens based on the parameter values on the link.

Alternatively, you may wish to make a Launch Rule conditional based on the user’s metadata, for example, only allow Project Managers to open the link. 

For these cases, define multiple Rules against the same app link and then specify differing results using a formula that has a True/False result. The app will execute the first rule with a True formula result. 

Refer to app link parameter values via {{parameterName}} syntax.

e.g., if the incoming app link is: yourcompany://inspection?perform=Yes 

Then, a formula of {{perform}} = ‘Yes’ will be True.

Sending multiple values to a Choices Field

A scenario may arise where you might need to send multiple values to a multiple-choice “Choices” field. In this scenario, your app deep link will look something like the example below, where the multiple values that are to be assigned to the choices field are pipe-separated:

Example:

https://eforms.mobileform.net/appredirect?link=eformsmobile://my_generic_test_app?the_choices_field=Red|Blue|Green|Black

In the sample link above, the data name for the choices field on the target form is “the_choices_field” and the values “Red|Blue|Green|Black” will be passed to that field when the link is clicked, and the app opens. To ensure you can pass parameters to your choices field successfully, make sure that you have the “Multiple choice” checkbox field selected as shown below:

Avoid mail filter issues by using our redirect option.

Some email clients (like Gmail) do not allow app launch URLs due to security issues. You can get around this by using the URL example provided below. This will redirect the user to a public, branded launch screen webpage to launch the desired app URL.

Example

https://eforms.mobileform.net/appredirect?link=eformsmobile://inspection?site=hello&Condition=123

Export/Import Launch Options

You can reuse launch rules by exporting and importing a .xlsx or CSV file in the required format, rather than creating them from scratch.

At the top right of the Launch Options page, hit Manage to export added rules, import a set of rules, or download a template in the required format to populate before importing.

The file’s first row needs to contain headers (App Link, Screen, Screen Parameters, and Conditional Formula) with rules added into rows beneath it.

Template Layout and Sheet Purpose

The template contains two sheets, one for your Launch Options and the other containing Definitions that provides additional info.

Did this article help you?


    • Related Articles

    • App Setup and Styling

      On the App Setup page, you can customize a few basic in-app cosmetics (visible after logging in to the app) and global app functionality, as well as configure field themes to aid rapid solution development. It also displays additional areas where you ...
    • User Defined Filter Options

      If you have large datasources or require more advanced options for querying your data, then you should consider allowing app users to filter data displayed in Listing and Mapping screens. This is done by checking the “Allow Filtering By Column” box ...
    • Multi-Language Options

      ur platform offers multi-language options in the app, when designing forms, and on the web portal. The app offers a set of default languages to choose from, which are the static text displayed when you log in to the app. The same applies to a form’s ...
    • Replicating Built-in App Screens

      The apps you build will have a set of standard/default Screens included by default. These being: Settings screen (for changing password, forcing sync, logging out) Saved Entries screen (list of in-progress/saved Form entries) Tasks screens (list of ...
    • Form Connector – NetSuite

      Our Premium connector for NetSuite allows you to easily push data and files captured from your forms directly into your NetSuite account. This creates a seamless, one-way synchronization, ensuring all your data is automatically updated in your ...