Index: base/android/sys_utils_android.cc |
diff --git a/base/android/sys_utils_android.cc b/base/android/sys_utils_android.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..0cea8c0c87a6e67152c5101944d2c8616b58ad24 |
--- /dev/null |
+++ b/base/android/sys_utils_android.cc |
@@ -0,0 +1,30 @@ |
+#include "base/android/sys_utils_android.h" |
+ |
+#include "base/android/build_info.h" |
+#include "base/lazy_instance.h" |
+#include "base/sys_info_internal.h" |
+#include "jni/SysUtils_jni.h" |
+ |
+namespace base { |
+namespace android { |
+ |
+bool SysUtilsAndroid::Register(JNIEnv* env) { |
+ return RegisterNativesImpl(env); |
+} |
+ |
+bool SysUtilsAndroid::IsLowEndDeviceFromJni() { |
+ JNIEnv* env = AttachCurrentThread(); |
+ return Java_SysUtils_isLowEndDevice(env); |
+} |
+} // namespace android |
+ |
+static base::LazyInstance< |
+ base::internal::LazySysInfoValue<bool, |
+ android::SysUtilsAndroid::IsLowEndDeviceFromJni> >::Leaky |
+ g_lazy_low_end_device = LAZY_INSTANCE_INITIALIZER; |
+ |
+bool SysUtils::IsLowEndDevice() { |
+ return g_lazy_low_end_device.Get().value(); |
+} |
+} // namespace base |
+ |