How to Know Browser and OS Details in Power Apps using Host Object

By | February 20, 2024

Recently, I was working on a project where we created a Login form in the Canvas App compatible with iPhone systems only. Throughout the development phase, we faced challenges in determining the client’s specifics like browser type or device, especially since our app needed to function across specific browsers and on iPhones. Upon conducting online research, we discovered the Host Object within Power Apps. This object proved instrumental as it offered vital information including the client’s OS type, user agent, session ID, and tenant ID.

In this blog post, we delve into the intricacies of the Power Apps Host object, exploring its capabilities in retrieving user host details and enhancing application functionality.

Understanding the Power Apps Host Object:

The Host object in Power Apps serves as a valuable resource for us seeking to obtain vital information about the client’s environment. It encapsulates various properties that offer insights into the user’s system, including:

Client’s Operating System Type

By accessing the Host object, we can retrieve information about the operating system (OS) running on the user’s device. This feature enables applications to adapt the functionality based on the specific OS, ensuring compatibility and optimal performance.

Example:

Power Apps using Host Object

Note: Don’t change the experience or functionality of your app based on the reported operating system by using the OSType

BrowserUserAgent User Agent Details

The Host object provides access to the user agent string, which contains valuable information about the client’s browser, device, and platform. This data is instrumental in tailoring the app’s interface and behavior to effectively suit the user’s environment.

Example :

Power Apps using Host Object

Session ID

Session is crucial for maintaining the continuity of user interactions within the application. With the Host object, we can access and manage session IDs, facilitating seamless navigation and user experience throughout the app’s lifecycle.

Example :

Power Apps using Host Object

Tenant ID

In multi-tenant environments, identifying the tenant associated with a particular user is essential for personalized experiences and data management. The Host object includes properties for retrieving the tenant ID, enabling developers to implement tenant-specific functionalities with ease.

Example :

Power Apps using Host Object

Host Version

The Host Version property allows us to identify the specific version of the Power Apps hosting environment. This information is crucial for ensuring compatibility with the platform and leveraging the latest features and capabilities available.

Example :

Power Apps using Host Object

Scenario

Our form can be accessible only on iPhone devices and Edge browsers. So, we want to some notification on Android devices that this form is only available for iPhones. We’ve accessed the Host Object and implemented a condition to verify whether the user’s device is an Android. If the condition evaluates to true, we’ll provide a notification indicating that this feature is exclusive to iPhones.

Power Apps using Host Object

This is how it works on Android devices now.

Power Apps using Host Object

Additionally, we’ve included a condition to prevent the form from being displayed on other than Edge. This condition utilizes the Host.BrowserUserAgent property to identify the browser being used and ensures that the form does not work on devices where a browser other than Edge is detected.

Power Apps using Host Object

Power Apps using Host Object

Conclusion

The Power Apps Host object emerges as a versatile tool for developers seeking to optimize user experience and application functionality. By harnessing the wealth of client details it provides, we can create responsive, cross-platform applications that cater to diverse user environments. From personalized experiences to enhanced security and compatibility, the Host object serves as a cornerstone for elevating the capabilities of Power Apps and delivering exceptional user-centric solutions.

In conclusion, mastering the intricacies of the Power Apps Host object empowers developers to unlock the full potential of their applications, driving user engagement, satisfaction, and success in the competitive landscape of app development.

Microsoft Power Platform