Mobile platform

By using mobile apps, you can reuse business logic and modeling from Microsoft Dynamics 365 for Finance and Operations. Mobile apps enable rich offline and mobile interactions, and provide an easy-to-use designer experience. Developers can create simplified forms in Microsoft Visual Studio and then design mobile apps that expose this functionality. The mobile platform makes it easy to change the forms and mobile app definitions to include customizations that are made to Finance and Operations.

Get started

Check out the following series of how-to videos that show how to create a mobile app.

Common configurations

These topics describe some common customizations that you can add to your mobile app.

Client-side development

Client-side APIs are used in the business logic file, which provides an extensibility layer to the mobile workspace that allows for customization. Some things that you can access and influence through the client-side APIs include:

  • Metadata
  • Runtime control/page instances
  • Business data
  • Offline-first business behaviors
  • Layout and style

The process for client-side development is described in these topics:

You can download a sample business logic file (with a .js file name extension) for the Reservation management workspace. Go to Dynamics365-for-Operations-mobile-FleetManagementSamples, open the business_logic folder, and locate the FM.js file

Server-side development

Workspace attributes and classes are used to create, configure, and publish workspaces on the server. These server-side X++ APIs can be used instead of using the task recorder-based mechanism to build a workspace. Workspaces created using either mechanism can then be styled and augmented using the client-side APIs.

Server-side development is described in these topics:

You can download the sample project (with an .axpp file name extension) for the Fleet Management mobile app. Go to Dynamics365-for-Operations-mobile-FleetManagementSamples and download the FMMobileApp.axpp file.

Debugging during development

During development it can be useful to attach a debugger to get more detailed information and insight into what is happening in the background. A web debugger can be used with the client-side JavaScript logic and styling and the Visual Studio debugger can be used with the server-side X++ business logic.

Debugging the client side

Prerequisites

  • Android device plus PC
  • Azure-hosted development machine (so the mobile device can point to it)

Steps to debug the client side

  1. On the web client that is exposed by the Azure-hosted development machine, ensure that there are mobile workspaces published for the Unified Operations app. For information about publishing a mobile workspace, see Publish a mobile workspace.

  2. Install the Android debug apk for the Unified Operations app on an Android device:

    • One time only, allow the installation of apk files - Go to Menu > Settings > Security and then check Unknown Sources to allow the phone to install apps from sources other than the Google Play Store.
    • Uninstall the Unified Operations app - Ensure that any previous version of the Unified Operations app has been uninstalled.
    • Download the apk file - From the device’s browser, navigate to the latest Unified Operations Android debug apk on Github and click Download (or use this direct link to the file).
    • Install the Unified Operations apk file - Confirm install of the Unified Operations app via the apk file.
    • Run the debug Unified Operations app on the device and sign in.
  3. Connect to the device from the debugging machine.

  4. After you connect the debugger, find the active tab on your device. You may need to click View more tabs on Android. One of the tabs should look similar to /www.index.html#/app/appList or /www.index.html#/app/app_landing.

    Expand the nodes to find the workspace JavaScript, such as File > (no domain) > ExpenseMobile.js. Click the JavaScript file to view it and add breakpoints.

    Expense management mobile workspace

  5. Reflect the mobile device on your desktop so that you can interact with it on the desktop screen.

  6. Go to through the desired workspace and forms.

  7. If breakpoints are encountered, then the browser developer tools will allow you to control the flow of execution and see the values and parameters being passed.

  8. To change styling at runtime, use the elements tab to alter the styling. This will help you determine what elements JavaScript should target and how those elements should be styled.

  9. If a needed change is identified, make those changes in JavaScript, and then push those changes into the environment.

  10. If more changes or validation is needed, repeat the process.

Debugging the server side

Prerequisites

  • Azure-hosted development machine (so the mobile device can point to it)

Steps to debug the serverside

  1. On the web client exposed by the Azure-hosted development machine, ensure that there are mobile workspaces published for the Unified Operations app. For information about publishing a mobile workspace, see Publish a mobile workspace.

  2. Open the Unified Operations app on your device, point to the Azure-hosted development machine, and sign in.

  3. Open Visual Studio on the Azure-hosted development machine and attach the debugger to the w3wp process.

  4. After you connect the debugger, find the desired business logic, and insert breakpoints as needed.

  5. Either use the app on your device as usual, or reflect the mobile device on your desktop so you can interact with it on the desktop screen.

  6. Navigate through the desired workspace and forms.

  7. If breakpoints are encountered, then Visual Studio will allow you to control the flow of execution and see the values and parameters being passed.

  8. If a needed change is identified, make those changes in X++, and push those changes into the environment.

  9. If more changes or validation is needed, repeat the process.

Change needed for ADFS to support Mobile Client in on-premises environments

If ADFS is in use on the domain and the environment is on-premises, then ADFS must be configured to provide a regular forms-based authentication screen instead of using Windows Integrated Authentication (WIA). The Microsoft Dynamics Unified Operations apps for iOS and Android require the regular forms-based authentication screen. ADFS should be configured to only provide WIA for browser clients (use cases). For more information, see Configure intranet forms based authentication for devices that do not support wia

Additional resources

What's new and in development

Go to the Microsoft Dynamics 365 Roadmap to see what new features have been released and what new features are in development.

Blogs

You can find opinions, news, and other information about Retail and other solutions on the Microsoft Dynamics 365 blog.