Roll src/third_party/skia 2893784:0963f5d
[chromium-blink-merge.git] / base / android / path_utils.h
blobd3421b3b01aa7f3a25557354db0ee1f01cea4944
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.
5 #ifndef BASE_ANDROID_PATH_UTILS_H_
6 #define BASE_ANDROID_PATH_UTILS_H_
8 #include <jni.h>
10 #include "base/base_export.h"
12 namespace base {
14 class FilePath;
16 namespace android {
18 // Retrieves the absolute path to the data directory of the current
19 // application. The result is placed in the FilePath pointed to by 'result'.
20 // This method is dedicated for base_paths_android.c, Using
21 // PathService::Get(base::DIR_ANDROID_APP_DATA, ...) gets the data dir.
22 BASE_EXPORT bool GetDataDirectory(FilePath* result);
24 // Retrieves the absolute path to the database directory that Android
25 // framework's SQLiteDatabase class uses when creating database files.
26 BASE_EXPORT bool GetDatabaseDirectory(FilePath* result);
28 // Retrieves the absolute path to the cache directory. The result is placed in
29 // the FilePath pointed to by 'result'. This method is dedicated for
30 // base_paths_android.c, Using PathService::Get(base::DIR_CACHE, ...) gets the
31 // cache dir.
32 BASE_EXPORT bool GetCacheDirectory(FilePath* result);
34 // Retrieves the path to the public downloads directory. The result is placed
35 // in the FilePath pointed to by 'result'.
36 BASE_EXPORT bool GetDownloadsDirectory(FilePath* result);
38 // Retrieves the path to the native JNI libraries via
39 // ApplicationInfo.nativeLibraryDir on the Java side. The result is placed in
40 // the FilePath pointed to by 'result'.
41 BASE_EXPORT bool GetNativeLibraryDirectory(FilePath* result);
43 // Retrieves the absolute path to the external storage directory. The result
44 // is placed in the FilePath pointed to by 'result'.
45 BASE_EXPORT bool GetExternalStorageDirectory(FilePath* result);
47 bool RegisterPathUtils(JNIEnv* env);
49 } // namespace android
50 } // namespace base
52 #endif // BASE_ANDROID_PATH_UTILS_H_