IntelliJ / Android Studio plugin connects Android Apps and Java Cloud middleware to Office 365 and Azure Services – New “MS Open Tech Tools”

Microsoft Open Technologies has released today an initial preview of a plugin for IntelliJ and Android Studio that enables developers of Android Apps to connect to Office 365 services and Azure Mobile Services, and developers of Java middleware to connect to Azure compute services.

The “MS Open Tech Tools plugin for Microsoft services,” available today as open source, was developed in close collaboration with our partners on the Office 365 and Azure engineering teams as well as members of the broader open source community. It builds on MS Open Tech’s long experience in providing open source developers with access to Microsoft services through the tools they already know and love, including the Azure Toolkit for Eclipse with Java and many other projects we have shipped over the last two years.

For Android app developers, this plugin provides a highly productive integrated development environment within IntelliJ IDEA and Android Studio, which they can use to integrate Android apps with Office 365 and Azure Mobile Services. For middleware Java developers, the plugin provides an integrated environment to access Microsoft Azure compute services. (Access to Office 365 data and services is coming soon.)

Today’s release is an initial preview, released as open source to encourage feedback and contributions from the developer community.

Android App Development

Our goal is to enable Android Apps to use the very rich capabilities of Microsoft Cloud Services. Key features include:

Office 365 services. Integrate your Android App with email, calendars and contacts from Office 365 Exchange Online, read and write files stored in Office 365 OneDrive accounts, take advantage of the Azure AD Graph API, work with SharePoint Lists, and much more. The plugin uses the full functionality of the production ready Office 365 SDK for Android, released today by MS Open Tech.

Office 365 services

Azure Mobile Services. From push notifications to social integration and mobile analytics, Azure Mobile Services gives your Android apps simple access to sophisticated mobile services. This preview release includes Server Explorer functionality that allows you to manage Azure Mobile Services through the IDE, with no need to go to the Azure management portal for common tasks. This functionality is available in both Android Studio and IntelliJ.

Azure services

Identity based Development Experience. The MS Open Tech Tools plugin uses AAD Graph for identity based access to Microsoft services, to dynamically show and edit which services and permissions are available for a particular application.

dynamic UI

Code generation wizard. The plugin automatically creates classes for the services that you have selected, for increased developer productivity.

Java Cloud Middleware Development

Our goal is to provide IntelliJ developers with the same capabilities we provide to Eclipse developers: templates and functionality that allow you to easily create, develop, test, and deploy Azure applications using the Eclipse development environment. At this point, this portion of the plugin is in an “alpha” preview state and the subset of the Azure Toolkit for Eclipse with Java functionality that has so far been enabled in this plugin release includes the following key features for Java developers:

Creating and running Java deployment projects in the local Azure emulator as well as publishing to the Azure cloud, including the ability to configure multiple roles, endpoints, deployment components.

Automatic upload of the JDK and Server to Azure storage for ease of deployment. This option automatically uploads the selected JDK and Web Application Server, when needed, to a selected Azure storage account and deploys these components from that account. This can greatly enhance the ease and efficiency of deploying the JDK and server components, as well as help with team development scenarios, by avoiding the need to embed these components in the deployment package or do manual uploads.

Streamlined remote access setup. In the “Publish to Cloud” wizard, simply type in a user name and password to enable remote access, or leave it blank to keep remote access disabled. Intellij will use the sample certificate for encrypting your remote access credentials in the Microsoft Azure configuration file, or you can use your own certificate.

Note that the Azure deployment projects for Java are currently supported only on Windows as the developer OS.

We will continue adding more features to this portion of the plugin and we will continue developing the Azure Toolkit for Eclipse with Java as well.

Looking Forward

We plan to extend the MS Open Tech Tools plugin to more Microsoft services in the future. Our initial offering in this preview release includes the specific services that Android and Java developers have told us are most important to them.

Additionally to Eclipse, IntelliJ and Android Studio, in the future we may also invest in other development environments to connect to Microsoft services. We have worked with the Java community for over three years to enhance the Azure developer experience in Eclipse, and the MS Open Tech Tools plugin is being released for Android Studio and IntelliJ in response to developer feedback regarding the most popular tools for Android development. The MS Open Tech team will continue to listen closely to the developer community for guidance on which tools will most benefit from access to Microsoft services, and we’ll continue to work hard to deliver the best possible developer experience across those tools.

Here are the complete instructions to download and install the MS Open Tech Tools plugin.

This is a preview release and we know it is not perfect in any way: please try it, give us feedback, record any bug you find (or better, contribute to the code we just released) and let us know which feature you like and what is missing! To send feedback or questions, just use MSDN Forums or Stack Overflow, or share your thoughts in the comments below.

Jean Paoli
Microsoft Open Technologies, Inc.