Social networks and multiplayer online games have drastically gained in popularity over the last decade. Likewise smartphones have become interesting targets for extending social networks and multiplayer games thanks to their innovative features such as intuitive user interfaces. Mobile versions of games and social network applications often make use of special capabilities of smartphones such as GPS and accelerometer. Porting these applications to different smartphones incurs high overhead due to their different programming models. To facilitate this porting effort, we introduce XMLVM, a byte code level cross-compiler to overcome the heterogeneity of the different programming models used by various smartphones. Specifically, we show how XMLVM can cross-compile an Android application to the iPhone and the Palm Pre, thereby significantly reducing the porting effort. The cross-compiler is based on Java byte code instructions that are translated to high-level programming languages supported by the targeted smartphone. Compatibility libraries map the API between smartphones. As a proof of concept, we have implemented a strategy game the demonstrate the feasibility of our approach.