diff options
author | Ignacio Solla <igsolla@google.com> | 2014-10-28 13:10:41 +0000 |
---|---|---|
committer | Ignacio Solla Paula <igsolla@google.com> | 2014-11-12 23:47:35 +0000 |
commit | 8ae9c440cb8835fd8d95c51674b11b3857fc6885 (patch) | |
tree | 4145ad40716ab7f263cc84adf3e67d1b8a3f5550 /chromium | |
parent | 36b0a0d250253f649c9200b73abbeb61fbc31292 (diff) | |
download | android_frameworks_webview-8ae9c440cb8835fd8d95c51674b11b3857fc6885.tar.gz android_frameworks_webview-8ae9c440cb8835fd8d95c51674b11b3857fc6885.tar.bz2 android_frameworks_webview-8ae9c440cb8835fd8d95c51674b11b3857fc6885.zip |
[WebView] Remove dependency on FileUtils.
We implement our own version of deleteContents to
avoid depending on FileUtils, a hidden Android API.
BUG:18152150
Change-Id: I8607e36827bacc38a80a35f65c13f39f561551a0
(cherry picked from commit 5112943866a77868d1987617ed1320e73e2a9ce4)
Diffstat (limited to 'chromium')
-rw-r--r-- | chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java b/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java index 9f9c3aa..840d306 100644 --- a/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java +++ b/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java @@ -27,7 +27,6 @@ import android.content.Intent; import android.content.SharedPreferences; import android.net.Uri; import android.os.Build; -import android.os.FileUtils; import android.os.Looper; import android.os.StrictMode; import android.os.SystemProperties; @@ -144,7 +143,7 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider { String dataDir = PathUtils.getDataDirectory(ActivityThread.currentApplication()); Log.i(TAG, "WebView package downgraded from " + lastVersion + " to " + currentVersion + "; deleting contents of " + dataDir); - FileUtils.deleteContents(new File(dataDir)); + deleteContents(new File(dataDir)); } if (lastVersion != currentVersion) { mWebViewPrefs.edit().putInt(VERSION_CODE_PREF, currentVersion).apply(); @@ -152,6 +151,20 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider { // Now safe to use WebView data directory. } + private static void deleteContents(File dir) { + File[] files = dir.listFiles(); + if (files != null) { + for (File file : files) { + if (file.isDirectory()) { + deleteContents(file); + } + if (!file.delete()) { + Log.w(TAG, "Failed to delete " + file); + } + } + } + } + private void initPlatSupportLibrary() { DrawGLFunctor.setChromiumAwDrawGLFunction(AwContents.getAwDrawGLFunction()); AwContents.setAwDrawSWFunctionTable(GraphicsUtils.getDrawSWFunctionTable()); |