[ https://issues.apache.org/jira/browse/CB-5059?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14295336#comment-14295336 ]
ASF GitHub Bot commented on CB-5059: ------------------------------------ Github user agrieve commented on a diff in the pull request: https://github.com/apache/cordova-plugin-file-transfer/pull/60#discussion_r23698327 --- Diff: src/android/FileTransfer.java --- @@ -316,7 +316,7 @@ public void run() { conn.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + BOUNDARY); // Set the cookies on the response - String cookie = CookieManager.getInstance().getCookie(target); + String cookie = webView.getCookieManager().getCookie(target); --- End diff -- I think we'll need to use reflection here to keep the plugin compatible with 3.x versions of android. e.g.: Look at how getPluginManager() is handled on line 854. > The android implementation of file transfer plugin should not depend on the > concrete class android.webkit.CookieManager > ----------------------------------------------------------------------------------------------------------------------- > > Key: CB-5059 > URL: https://issues.apache.org/jira/browse/CB-5059 > Project: Apache Cordova > Issue Type: Improvement > Components: Plugin File Transfer > Affects Versions: Master > Environment: cordova-android, git branch 3.0.x > Reporter: Junmin > Fix For: Master > > > The android implementation of file transfer plugin leverages the class > android.webkit.CookieManager, which depends on the concrete web > infrastructure android.webkit.WebView. This dependence ruins the portability > of the plugin. For example, it could not run on a substantial implementation > of CordovaWebView which based on a android third party component(such as > chromium for android). > Following is the crash log when initializing the CookieManager without > android.webkit.WebView: > I/dalvikvm(5006): java.lang.IllegalStateException: Call > CookieSyncManager::createInstance() or create a webview before using this > class > I/dalvikvm(5006): at > android.webkit.JniUtil.checkInitialized(JniUtil.java:44) > I/dalvikvm(5006): at > android.webkit.JniUtil.getDatabaseDirectory(JniUtil.java:65) > I/dalvikvm(5006): at > android.webkit.CookieManagerClassic.nativeGetCookie(Native Method) > I/dalvikvm(5006): at > android.webkit.CookieManagerClassic.getCookie(CookieManagerClassic.java:109) > I/dalvikvm(5006): at > android.webkit.CookieManagerClassic.getCookie(CookieManagerClassic.java:96) > I/dalvikvm(5006): at > org.apache.cordova.filetransfer.FileTransfer$4.run(FileTransfer.java:747) -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org For additional commands, e-mail: issues-h...@cordova.apache.org