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/sys_utils.h"
6
7#include "base/android/build_info.h"
8#include "base/sys_info.h"
9#include "jni/SysUtils_jni.h"
10
11namespace base {
12namespace android {
13
14bool SysUtils::Register(JNIEnv* env) {
15  return RegisterNativesImpl(env);
16}
17
18bool SysUtils::IsLowEndDeviceFromJni() {
19  JNIEnv* env = AttachCurrentThread();
20  return Java_SysUtils_isLowEndDevice(env);
21}
22
23bool SysUtils::IsLowEndDevice() {
24  static bool is_low_end = IsLowEndDeviceFromJni();
25  return is_low_end;
26}
27
28size_t SysUtils::AmountOfPhysicalMemoryKBFromJni() {
29  JNIEnv* env = AttachCurrentThread();
30  return static_cast<size_t>(Java_SysUtils_amountOfPhysicalMemoryKB(env));
31}
32
33size_t SysUtils::AmountOfPhysicalMemoryKB() {
34  static size_t amount_of_ram = AmountOfPhysicalMemoryKBFromJni();
35  return amount_of_ram;
36}
37
38SysUtils::SysUtils() { }
39
40}  // namespace android
41}  // namespace base
42