Developing Mobile Apps for Microsoft Dynamics AX 2012 R3
- The mobile app landscape and AX 2012
- Mobile architecture
- Developing a mobile app
- Architectural variations
So far, this chapter has focused primarily on a specific mobile architecture that solves the key challenges of allowing remote mobile apps to work with an on-premises deployment of AX 2012. This architecture is also optimized for apps that are distributed by app stores and installed on local devices. However, certain variations of this architecture might be appropriate in specific scenarios.
In some scenarios, mobile apps are used exclusively within a corporate network environment. An example is a warehouse app that has corporate network connectivity throughout the facility. In such a case, the user is already authenticated when accessing the corporate network, so further authentication isn’t necessary. Also, the app can access AX 2012 through the corporate network, so the Service Bus Relay might not be necessary.
Another approach to mobile apps is the use of web apps targeted for mobile devices. In this case, the app is available through the web browser on the device. This approach has some tradeoffs. Some scenarios might be most appropriate for web apps, and other scenarios might be most appropriate for mobile apps that are installed on the device. Many popular websites today also deliver mobile apps that users install, even though the experience is also available through browsers.
Web apps have the following advantages:
- They work across devices, although they need to be tested and refined to handle device-specific nuances.
- They are more adaptable to AX 2012 customizations and extensions. Because they are rendered from the AX 2012 server, the apps can include the customizations and extensions that have been applied to the server.
- They do not require users to install or configure the apps.
Web apps have the following disadvantages:
- They don’t provide the high-fidelity, immersive experiences available in modern mobile apps.
- They rely completely on the server to deliver the app and content. The server might not perform as well or might be less responsive than an app that is installed on the device.
- They typically don’t have local caching or offline capabilities.
- They probably can’t take advantage of device features such as a camera or GPS.
You can use these tradeoffs to decide which approach is most appropriate for your scenario.