The need for increased performance of mobile device directly conflicts with the desire for longer battery life. Offloading computation to multiple devices is an effective method to reduce energy consumption and enhance performance for mobile applications. Android provides mechanisms for creating mobile applications but lacks a native scheduling system for determining where code should be executed. This paper presents Jade, a system that adds sophisticated energy-aware computation offloading capabilities to Android apps. Jade monitors device and application status and automatically decides where code should be executed. Jade dynamically adjusts offloading strategy by adapting to workload variation, communication costs, and energy status in a distributed network of Android and non-Android devices. Jade minimizes the burden on developers to build applications with computation offloading ability by providing easy-to-use Jade API. Evaluation shows that Jade can effectively reduce up to 39% of average power consumption for mobile application while improving application performance.