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/application_status_listener.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/event_log.h" 13#include "base/android/field_trial_list.h" 14#include "base/android/important_file_writer_android.h" 15#include "base/android/java_handler_thread.h" 16#include "base/android/jni_android.h" 17#include "base/android/jni_registrar.h" 18#include "base/android/jni_utils.h" 19#include "base/android/memory_pressure_listener_android.h" 20#include "base/android/path_service_android.h" 21#include "base/android/path_utils.h" 22#include "base/android/sys_utils.h" 23#include "base/android/thread_utils.h" 24#include "base/android/trace_event_binding.h" 25#include "base/basictypes.h" 26#include "base/debug/trace_event.h" 27#include "base/message_loop/message_pump_android.h" 28#include "base/power_monitor/power_monitor_device_source_android.h" 29 30namespace base { 31namespace android { 32 33static RegistrationMethod kBaseRegisteredMethods[] = { 34 { "ApplicationStatusListener", 35 base::android::ApplicationStatusListener::RegisterBindings }, 36 { "BuildInfo", base::android::BuildInfo::RegisterBindings }, 37 { "CommandLine", base::android::RegisterCommandLine }, 38 { "ContentUriUtils", base::RegisterContentUriUtils }, 39 { "CpuFeatures", base::android::RegisterCpuFeatures }, 40 { "EventLog", base::android::RegisterEventLog }, 41 { "FieldTrialList", base::android::RegisterFieldTrialList }, 42 { "ImportantFileWriterAndroid", 43 base::android::RegisterImportantFileWriterAndroid }, 44 { "JNIUtils", base::android::RegisterJNIUtils }, 45 { "MemoryPressureListenerAndroid", 46 base::android::MemoryPressureListenerAndroid::Register }, 47 { "JavaHandlerThread", base::android::JavaHandlerThread::RegisterBindings }, 48 { "PathService", base::android::RegisterPathService }, 49 { "PathUtils", base::android::RegisterPathUtils }, 50 { "SystemMessageHandler", base::MessagePumpForUI::RegisterBindings }, 51 { "SysUtils", base::android::SysUtils::Register }, 52 { "PowerMonitor", base::RegisterPowerMonitor }, 53 { "ThreadUtils", base::RegisterThreadUtils }, 54 { "TraceEvent", base::android::RegisterTraceEvent }, 55}; 56 57bool RegisterJni(JNIEnv* env) { 58 TRACE_EVENT0("startup", "base_android::RegisterJni"); 59 return RegisterNativeMethods(env, kBaseRegisteredMethods, 60 arraysize(kBaseRegisteredMethods)); 61} 62 63} // namespace android 64} // namespace base 65