blob: cf5542af681eddd5b0673301be35c95474729e17 [file] [log] [blame]
[email protected]6fa1e7ef2012-03-14 11:24:041// Copyright (c) 2012 The Chromium Authors. All rights reserved.
[email protected]61c86c62011-08-02 16:11:162// 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/path_utils.h"
6
[email protected]61c86c62011-08-02 16:11:167#include "base/android/jni_android.h"
8#include "base/android/jni_string.h"
[email protected]f98d7b92011-09-09 10:17:359#include "base/android/scoped_java_ref.h"
[email protected]61c86c62011-08-02 16:11:1610
11#include "jni/path_utils_jni.h"
12
13namespace base {
14namespace android {
15
16std::string GetDataDirectory() {
17 JNIEnv* env = AttachCurrentThread();
[email protected]6fa1e7ef2012-03-14 11:24:0418 ScopedJavaLocalRef<jstring> path =
19 Java_PathUtils_getDataDirectory(env, GetApplicationContext());
20 return ConvertJavaStringToUTF8(path);
[email protected]61c86c62011-08-02 16:11:1621}
22
23std::string GetCacheDirectory() {
24 JNIEnv* env = AttachCurrentThread();
[email protected]6fa1e7ef2012-03-14 11:24:0425 ScopedJavaLocalRef<jstring> path =
26 Java_PathUtils_getCacheDirectory(env, GetApplicationContext());
27 return ConvertJavaStringToUTF8(path);
28}
29
30std::string GetDownloadsDirectory() {
31 JNIEnv* env = AttachCurrentThread();
32 ScopedJavaLocalRef<jstring> path =
33 Java_PathUtils_getDownloadsDirectory(env, GetApplicationContext());
34 return ConvertJavaStringToUTF8(path);
[email protected]61c86c62011-08-02 16:11:1635}
36
[email protected]672898b2012-07-02 20:04:0437std::string GetNativeLibraryDirectory() {
38 JNIEnv* env = AttachCurrentThread();
39 ScopedJavaLocalRef<jstring> path =
40 Java_PathUtils_getNativeLibraryDirectory(env, GetApplicationContext());
41 return ConvertJavaStringToUTF8(path);
42}
43
[email protected]61c86c62011-08-02 16:11:1644bool RegisterPathUtils(JNIEnv* env) {
45 return RegisterNativesImpl(env);
46}
47
48} // namespace android
49} // namespace base