From 266dc37da21f2cc80063c944e534ef8c15ac2efc Mon Sep 17 00:00:00 2001 From: theScrabi Date: Mon, 25 Jun 2018 13:22:42 +0200 Subject: [PATCH] add stetho --- build.gradle | 4 ++++ .../owncloud/android/lib/common/http/HttpClient.java | 10 ++++++++-- .../android/lib/resources/files/RemoteFile.java | 7 +++++-- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/build.gradle b/build.gradle index bd256738..6d4ced96 100644 --- a/build.gradle +++ b/build.gradle @@ -21,6 +21,10 @@ dependencies { api 'org.apache.jackrabbit:jackrabbit-webdav:2.12.4' api 'com.squareup.okhttp3:okhttp:3.10.0' api project(':dav4android') + + // Used for network and database debuging + debugApi 'com.facebook.stetho:stetho:1.5.0' + debugApi 'com.facebook.stetho:stetho-okhttp3:1.5.0' } android { diff --git a/src/com/owncloud/android/lib/common/http/HttpClient.java b/src/com/owncloud/android/lib/common/http/HttpClient.java index 76af65e9..9976de0f 100644 --- a/src/com/owncloud/android/lib/common/http/HttpClient.java +++ b/src/com/owncloud/android/lib/common/http/HttpClient.java @@ -26,6 +26,8 @@ package com.owncloud.android.lib.common.http; import android.content.Context; +import com.facebook.stetho.okhttp3.StethoInterceptor; +import com.owncloud.android.lib.BuildConfig; import com.owncloud.android.lib.common.OwnCloudClientManagerFactory; import com.owncloud.android.lib.common.http.interceptors.HttpInterceptor; import com.owncloud.android.lib.common.http.interceptors.UserAgentInterceptor; @@ -68,13 +70,17 @@ public class HttpClient { NetworkUtils.getKnownServersStore(sContext)); final SSLContext sslContext = SSLContext.getInstance("TLS"); sslContext.init(null, new TrustManager[] {trustManager}, null); - sOkHttpClient = new OkHttpClient.Builder() + OkHttpClient.Builder clientBuilder = new OkHttpClient.Builder() .addInterceptor(getOkHttpInterceptor()) .protocols(Arrays.asList(Protocol.HTTP_1_1)) .followRedirects(false) .sslSocketFactory(sslContext.getSocketFactory(), trustManager) .hostnameVerifier(new BrowserCompatHostnameVerifier()) - .build(); + if(BuildConfig.DEBUG) { + clientBuilder.addNetworkInterceptor(new StethoInterceptor()); + } + sOkHttpClient = clientBuilder.build(); + } catch (Exception e) { Log_OC.e(TAG, "Could not setup SSL system.", e); } diff --git a/src/com/owncloud/android/lib/resources/files/RemoteFile.java b/src/com/owncloud/android/lib/resources/files/RemoteFile.java index 9c49c6c3..73d44a5b 100644 --- a/src/com/owncloud/android/lib/resources/files/RemoteFile.java +++ b/src/com/owncloud/android/lib/resources/files/RemoteFile.java @@ -27,8 +27,10 @@ package com.owncloud.android.lib.resources.files; import android.net.Uri; import android.os.Parcel; import android.os.Parcelable; +import android.util.Log; import com.owncloud.android.lib.common.network.WebdavEntry; +import com.owncloud.android.lib.common.utils.Log_OC; import java.io.Serializable; import java.math.BigDecimal; @@ -232,8 +234,9 @@ public class RemoteFile implements Parcelable, Serializable { private static String getRemotePathFromUrl(HttpUrl url, String displayName) { - final String pathToRemove = NEW_WEBDAV_FILES_PATH_4_0 + displayName; - return Uri.decode(url.encodedPath()).replace(pathToRemove, ""); + final String davPath = NEW_WEBDAV_FILES_PATH_4_0 + displayName; + final String pathToOc = url.encodedPath().split(davPath)[0]; + return Uri.decode(url.encodedPath()).replace(pathToOc + davPath, ""); } /**