Capture contact images with Xrm.Device.captureImage
This article shows how to capture contact images using a Dynamics 365 mobile App based on the new client API in version 9. The same could be extended to capture images in any entity for other business scenarios.
Firstly, we will create a Dynamics 365 App:
You can also get into the “My Apps” section using the following URL:
Please notice we will use the new Unified Interface in the Client option:
This app will be available for the Dynamics 365 for phones. In my case, I’m testing it with an iPhone.
In the new app, we will edit the site map to include the contact entity:
We will pass the record GUID and the entity type (e.g. contact) as the command parameters:
You can download this code from GitHub:
Once we have captured the image, we will update the current contact record. There is where we are using the method Xrm.Web.updateRecord. To display some alerts or potential error messages, we will use the method Xrm.Navigation.openAlertDialog and Xrm.Navigation.openErrorDialog. Finally, to refresh the form and show the new picture, we are refreshing the form with the method Xrm.Navigation.openForm. These methods are also part of the new client API with Dynamics 365 version 9.
In the actual mobile app, you should see something like these screens:
The new button should appear when you click on “…”:
Once you click the button, it should trigger the device camera:
If everything is ok, it will show us the alert dialog we were expecting:
Finally, the picture should appear in our contact form:
Notes: This article has been written using the platform version 188.8.131.5267