2017-08-13

Microsoft Project Rome is a platform that allows a user to connect, manage and control devices and apps locally or from the cloud. It allows a developer to write apps that can facilitate a user to start a task on one device and complete on another device. For an instance, if you are listening songs on an App on your mobile then you can move this app and songs on different devices like PC, Xbox, and TV etc.

Project Rome aims to provide a personal OS that can help users to work in the heterogeneous environment with multiple devices and apps options. Project Rome provides following components to use drive engagement experience;

  • Programming Model –  this provides APIs for Android, Windows, iOS and Microsoft Graph and cloud apps to build user experience by implementing Project Rome capabilities.
  • Infrastructure Services –this enables set of Microsoft cloud service to work with windows based and cross platform devices.
  • Device Runtime –this is to connect and integrate windows based and cross platform device with infrastructure services of Microsoft Project Rome.

In traditional systems, when you click on a web link in an app, it takes you to the device browser instead of the app. So, you don’t get native user experience of the app. Whereas, Microsoft Rome uses an AppUriHandler to enable native apps on the host device instead of the browser. Also, Project Rome has a feature to discover devices using local network, Bluetooth or from the cloud.

Microsoft Project Rome uses the capabilities of Microsoft Graph APIs and RemoteSystems APIs to connect multiple user devices within proximity and control their devices by setting up a remote session with the help of respective APIs. Microsoft Project Rome’s capabilities help developers to build next generation apps to leverage user’s environment and transcend the user screens on companion devices. Below are the possible use cases where developers can use these APIs

  • Share screens –To increase the user’s experience of apps, developers can use APIs to launch apps on a bigger screen.
  • Launch apps on cross device –Developers can extend the functionality using APIs to provide a rich user experience on cross devices. So, User will get the native user experience of the app on a different user’s device.
  • Remote controlling of apps –Developers can extend the functionality of their apps to add additional remote controlling features from a companion device.
  • Establish collaboration within proximity –  Using APIs, developers can write apps that can be advantageous for multiple users to collaborate in a local network.

There is software development toolkit (SDK) available for Java and Xamarin development tool to write apps by enabling Universal Windows Platform (UWP) to bridge the user experience gap when user transfer screens between windows, android and iOS devices.

Based on the features of Microsoft Project Rome, below are the advantages of this platform;

  1. It uses existing Windows 10 APIs. So, it’s easy to develop apps for Windows 10 developers.
  2. It provides seamless integration with multiple vendors like Android and iOS devices.
  3. Next generation apps, with capability launch the native app to provide same user experience while opening a web link.

In this article, I have covered the introduction of Microsoft Project Rome. And, what you can do as a developer and how. Also, we discussed its components and available SDKs for cross platform app development.

Hope, this will be helpful for you!

Keep reading and learning?

Thank you!!

About the author 

Dharmendra Singh