Home | History | Annotate | Download | only in android
      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 "content/common/android/device_telephony_info.h"
      6 
      7 #include "base/android/jni_android.h"
      8 #include "base/android/jni_string.h"
      9 #include "base/logging.h"
     10 #include "jni/DeviceTelephonyInfo_jni.h"
     11 
     12 using base::android::AttachCurrentThread;
     13 using base::android::ConvertJavaStringToUTF8;
     14 using base::android::ScopedJavaLocalRef;
     15 
     16 namespace content {
     17 
     18 DeviceTelephonyInfo::DeviceTelephonyInfo() {
     19   JNIEnv* env = AttachCurrentThread();
     20   j_device_info_.Reset(Java_DeviceTelephonyInfo_create(env,
     21       base::android::GetApplicationContext()));
     22 }
     23 
     24 DeviceTelephonyInfo::~DeviceTelephonyInfo() {
     25 }
     26 
     27 std::string DeviceTelephonyInfo::GetNetworkCountryIso() {
     28   JNIEnv* env = AttachCurrentThread();
     29   ScopedJavaLocalRef<jstring> result =
     30       Java_DeviceTelephonyInfo_getNetworkCountryIso(env, j_device_info_.obj());
     31   return ConvertJavaStringToUTF8(result);
     32 }
     33 
     34 // static
     35 bool DeviceTelephonyInfo::RegisterDeviceTelephonyInfo(JNIEnv* env) {
     36   return RegisterNativesImpl(env);
     37 }
     38 
     39 }  // namespace content
     40