1 // Copyright (c) 2012 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/base_jni_registrar.h" 6 7 #include "base/android/activity_status.h" 8 #include "base/android/build_info.h" 9 #include "base/android/command_line_android.h" 10 #include "base/android/content_uri_utils.h" 11 #include "base/android/cpu_features.h" 12 #include "base/android/important_file_writer_android.h" 13 #include "base/android/java_handler_thread.h" 14 #include "base/android/jni_android.h" 15 #include "base/android/jni_registrar.h" 16 #include "base/android/memory_pressure_listener_android.h" 17 #include "base/android/path_service_android.h" 18 #include "base/android/path_utils.h" 19 #include "base/android/sys_utils.h" 20 #include "base/android/thread_utils.h" 21 #include "base/basictypes.h" 22 #include "base/debug/trace_event.h" 23 #include "base/message_loop/message_pump_android.h" 24 #include "base/power_monitor/power_monitor_device_source_android.h" 25 26 #if defined(GOOGLE_TV) 27 #include "base/android/context_types.h" 28 #endif 29 30 namespace base { 31 namespace android { 32 33 static RegistrationMethod kBaseRegisteredMethods[] = { 34 { "ActivityStatus", base::android::ActivityStatus::RegisterBindings }, 35 { "BuildInfo", base::android::BuildInfo::RegisterBindings }, 36 { "CommandLine", base::android::RegisterCommandLine }, 37 #if defined(GOOGLE_TV) 38 { "ContextTypes", base::android::RegisterContextTypes }, 39 #endif 40 { "ContentUriUtils", base::RegisterContentUriUtils }, 41 { "CpuFeatures", base::android::RegisterCpuFeatures }, 42 { "ImportantFileWriterAndroid", 43 base::android::RegisterImportantFileWriterAndroid }, 44 { "MemoryPressureListenerAndroid", 45 base::android::MemoryPressureListenerAndroid::Register }, 46 { "JavaHandlerThread", base::android::JavaHandlerThread::RegisterBindings }, 47 { "PathService", base::android::RegisterPathService }, 48 { "PathUtils", base::android::RegisterPathUtils }, 49 { "SystemMessageHandler", base::MessagePumpForUI::RegisterBindings }, 50 { "SysUtils", base::android::SysUtils::Register }, 51 { "PowerMonitor", base::RegisterPowerMonitor }, 52 { "ThreadUtils", base::RegisterThreadUtils }, 53 }; 54 55 bool RegisterJni(JNIEnv* env) { 56 TRACE_EVENT0("startup", "base_android::RegisterJni"); 57 return RegisterNativeMethods(env, kBaseRegisteredMethods, 58 arraysize(kBaseRegisteredMethods)); 59 } 60 61 } // namespace android 62 } // namespace base 63