OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef ANDROID_WEBVIEW_NATIVE_ANDROID_PROTOCOL_HANDLER_H_ | 5 #ifndef ANDROID_WEBVIEW_NATIVE_ANDROID_PROTOCOL_HANDLER_H_ |
6 #define ANDROID_WEBVIEW_NATIVE_ANDROID_PROTOCOL_HANDLER_H_ | 6 #define ANDROID_WEBVIEW_NATIVE_ANDROID_PROTOCOL_HANDLER_H_ |
7 | 7 |
8 #include "base/android/jni_android.h" | 8 #include "base/android/jni_android.h" |
9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
10 #include "net/url_request/url_request_job_factory.h" | |
11 | 10 |
12 namespace net { | 11 namespace net { |
13 class URLRequestContext; | 12 class URLRequestContext; |
| 13 class URLRequestInterceptor; |
14 } // namespace net | 14 } // namespace net |
15 | 15 |
16 namespace android_webview { | 16 namespace android_webview { |
17 | 17 |
18 // These method register support for Android WebView-specific protocol schemes: | 18 // These methods create interceptors for Android WebView-specific schemes: |
19 // | 19 // |
20 // - "content:" scheme is used for accessing data from Android content | 20 // - "content:" scheme is used for accessing data from Android content |
21 // providers, see http://developer.android.com/guide/topics/providers/ | 21 // providers, see http://developer.android.com/guide/topics/providers/ |
22 // content-provider-basics.html#ContentURIs | 22 // content-provider-basics.html#ContentURIs |
23 // | 23 scoped_ptr<net::URLRequestInterceptor> CreateContentSchemeRequestInterceptor(); |
24 scoped_ptr<net::URLRequestJobFactory::ProtocolHandler> | |
25 CreateContentSchemeProtocolHandler(); | |
26 | 24 |
27 // - "file:" scheme extension for accessing application assets and resources | 25 // - "file:" scheme extension for accessing application assets and resources |
28 // (file:///android_asset/ and file:///android_res/), see | 26 // (file:///android_asset/ and file:///android_res/), see |
29 // http://developer.android.com/reference/android/webkit/ | 27 // http://developer.android.com/reference/android/webkit/ |
30 // WebSettings.html#setAllowFileAccess(boolean) | 28 // WebSettings.html#setAllowFileAccess(boolean) |
31 scoped_ptr<net::URLRequestJobFactory::ProtocolHandler> | 29 scoped_ptr<net::URLRequestInterceptor> CreateAssetFileRequestInterceptor(); |
32 CreateAssetFileProtocolHandler(); | |
33 | 30 |
34 bool RegisterAndroidProtocolHandler(JNIEnv* env); | 31 bool RegisterAndroidProtocolHandler(JNIEnv* env); |
35 | 32 |
36 } // namespace android_webview | 33 } // namespace android_webview |
37 | 34 |
38 #endif // ANDROID_WEBVIEW_NATIVE_ANDROID_PROTOCOL_HANDLER_H_ | 35 #endif // ANDROID_WEBVIEW_NATIVE_ANDROID_PROTOCOL_HANDLER_H_ |
OLD | NEW |