|  | // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 
|  | // Use of this source code is governed by a BSD-style license that can be | 
|  | // found in the LICENSE file. | 
|  |  | 
|  | #include "base/system_monitor/system_monitor.h" | 
|  | #include "jni/SystemMonitor_jni.h" | 
|  |  | 
|  | namespace base { | 
|  |  | 
|  | namespace android { | 
|  |  | 
|  | // Native implementation of SystemMonitor.java. | 
|  | void OnBatteryChargingChanged(JNIEnv* env, jclass clazz) { | 
|  | SystemMonitor::Get()->ProcessPowerMessage(SystemMonitor::POWER_STATE_EVENT); | 
|  | } | 
|  |  | 
|  | void OnMainActivityResumed(JNIEnv* env, jclass clazz) { | 
|  | SystemMonitor::Get()->ProcessPowerMessage(SystemMonitor::RESUME_EVENT); | 
|  | } | 
|  |  | 
|  | void OnMainActivitySuspended(JNIEnv* env, jclass clazz) { | 
|  | SystemMonitor::Get()->ProcessPowerMessage(SystemMonitor::SUSPEND_EVENT); | 
|  | } | 
|  |  | 
|  | }  // namespace android | 
|  |  | 
|  | bool SystemMonitor::IsBatteryPower() { | 
|  | JNIEnv* env = base::android::AttachCurrentThread(); | 
|  | return base::android::Java_SystemMonitor_isBatteryPower(env); | 
|  | } | 
|  |  | 
|  | bool RegisterSystemMonitor(JNIEnv* env) { | 
|  | return base::android::RegisterNativesImpl(env); | 
|  | } | 
|  |  | 
|  | }  // namespace base |