Microsoft's Project Rome efforts seek to bridge a user's experience across all of their devices, and today's release of an SDK for Android allows developers to help Microsoft in that goal by implementing Project Rome in a number of ways. The SDK allows developers to make system calls and utilize Project Rome through methods rooted in both Java and Xamarin, making it easy to implement in almost any project's codebase. The SDK includes two key APIs; the Remote Systems API, which detects eligible Windows devices that a user owns, and the Remote Launch API, which launches apps remotely on the target device. These tie into remote app services, but those services are not in this release of the Project Rome Android SDK, and will be seeing the light of day at a later date, which Microsoft has not yet announced.
The SDK's most basic implementation in an app allows a developer to trigger the launching of a custom URI on the target device, which could conceivably lead to web apps, custom code, or a number of other elements that could be used to build a cohesive cross-device experience. While Project Rome can also be used to simply control a computer or phone outright from the other device, the focus here is on building cross-platform experiences on a per-app basis. The implementation of Project Rome's Android SDK via Java involves using Webview as a passthrough, while the Xamarin implementation uses URI sync. Both of these standards should already be present on most devices, making Project Rome apps widely compatible.
For those who don't already know, Project Rome was announced by Microsoft just a couple of days ago as a remote control platform meant to allow developers to create cross-device experiences across ecosystems, and give a user full control of all of their devices from any one of them. While the project is not open-source, Microsoft has provided a number of tutorials and samples for developers on a GitHub page. Users can expect to start seeing some fairly exciting uses for Project Rome across their devices, since the simple implementation of API calls makes it possible to insert a call just about anywhere into an app.