1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "base/android/memory_pressure_listener_android.h" 6 7 #include "base/android/context_utils.h" 8 #include "base/memory/memory_pressure_listener.h" 9 #include "jni/MemoryPressureListener_jni.h" 10 11 using base::android::JavaParamRef; 12 13 // Defined and called by JNI. 14 static void OnMemoryPressure(JNIEnv* env, 15 const JavaParamRef<jclass>& clazz, 16 jint memory_pressure_level) { 17 base::MemoryPressureListener::NotifyMemoryPressure( 18 static_cast<base::MemoryPressureListener::MemoryPressureLevel>( 19 memory_pressure_level)); 20 } 21 22 namespace base { 23 namespace android { 24 25 bool MemoryPressureListenerAndroid::Register(JNIEnv* env) { 26 return RegisterNativesImpl(env); 27 } 28 29 void MemoryPressureListenerAndroid::RegisterSystemCallback(JNIEnv* env) { 30 Java_MemoryPressureListener_registerSystemCallback( 31 env, GetApplicationContext()); 32 } 33 34 } // namespace android 35 } // namespace base 36