I. Introduction
One of the most important challenges in mobile computing is to address the contradiction between the increasing complexity of mobile applications and the limited local capabilities of mobile devices. A viable solution to this challenge is to leverage cloud computing and execute mobile applications remotely. Such remote execution benefits a large varieties of mobile applications, such as gesture recognition [8], voice control, recognition assistance [2] and mobile gaming [6].