Microsoft is offering a tool and new documentation to help developers move existing Android apps to the WP7 mobile platform.
Microsoft last month created tools to help iOS developers modify their code and find the correct APIs to get their applications to run on Windows Phone 7. Now Microsoft has targeted developers of the largest platform in terms of market share to make it easier for them to expand their potential market.
Just like the tool that maps the iOS API to the Windows Phone API, Microsoft has created what they call the Android to Windows Phone API Mapping Tool. Right now it only has support for Gingerbread 2.3, which is what most Android developers should be targeting for the phone platform. While Android developers have to pay attention to previous builds like 2.2 and earlier, Microsoft only needs to focus on the latest version. No doubt the Windows Phone team will get access to Android 2.4, also known as Ice Cream Sandwich, as early as possible and update the tool.
The tool is straightforward. Just select the class you are interested in and drill down to see the constants, properties, and methods that apply to it. You also can search the database by keyword. The tool will give you the closest corresponding class in the Windows Phone API library and a link to the MSDN page that goes into greater detail, including sample code. The pages in the tool also support comments so developers can share information and ideas with each other. You can subscribe the comments via RSS or email if you want to follow a discussion on a particular class.
It isn't perfect though, mainly because of the differences in the two platforms. There often isn't a one-to-one match on APIs between the platforms. Sometimes, there isn't a match at all. If you know of a match or a workable solution that isn't listed, there is a feedback tool where you can submit your suggestion to get it added.
The Windows Phone Developer Blog also has a link to a 99-page white paper titled "Windows Phone 7 Guide for Android Application Developers."
There is nothing magic about this. Porting is a tedious job no matter what. This just makes it easier to zero in on the needed information instead of running around in circles trying to figure out if Windows Phone has the API you need and then determine the name for it.