From 685e61cc7e2c5268dd9fea7a5daa90c113cf0d30 Mon Sep 17 00:00:00 2001 From: Mariotaku Lee Date: Wed, 1 Mar 2017 15:04:11 +0800 Subject: [PATCH] fixed signing properties --- .../configs/twidere_private_config.tar.gz.enc | Bin 4848 -> 4848 bytes .../twidere/util/UserAgentUtils.java | 51 +++++++----------- .../extension/model/AccountExtensions.kt | 4 +- 3 files changed, 22 insertions(+), 33 deletions(-) diff --git a/travis/configs/twidere_private_config.tar.gz.enc b/travis/configs/twidere_private_config.tar.gz.enc index e553529d12507ac6a25ff525cd4de6d1f1c42bcc..5cc7a8671563ccc8ba18b87c27df0275b6d80739 100644 GIT binary patch literal 4848 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 WEc1i*lW8ln;?VTDs=dG{^ReZ!mUR9A literal 4848 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 W3%-a_5NXs6`Msw@tNm5@k>OUAs!t&R diff --git a/twidere/src/main/java/org/mariotaku/twidere/util/UserAgentUtils.java b/twidere/src/main/java/org/mariotaku/twidere/util/UserAgentUtils.java index 9ca29be4f..98db59bba 100644 --- a/twidere/src/main/java/org/mariotaku/twidere/util/UserAgentUtils.java +++ b/twidere/src/main/java/org/mariotaku/twidere/util/UserAgentUtils.java @@ -31,6 +31,11 @@ import android.webkit.WebSettings; import android.webkit.WebView; import java.lang.reflect.Constructor; +import java.util.concurrent.Callable; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.FutureTask; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; /** * Created by mariotaku on 15/4/12. @@ -73,48 +78,32 @@ public class UserAgentUtils { @WorkerThread @Nullable - public static String getDefaultUserAgentStringSafe(Context context) { + public static String getDefaultUserAgentStringSafe(final Context context) { if (Looper.myLooper() == Looper.getMainLooper()) { //noinspection ResourceType return getDefaultUserAgentString(context); } final Handler handler = new Handler(Looper.getMainLooper()); + FutureTask task = new FutureTask<>(new Callable() { + @Override + public String call() throws Exception { + return getDefaultUserAgentString(context); + } + }); try { - final FetchUserAgentRunnable runnable = new FetchUserAgentRunnable(context); - handler.post(runnable); - runnable.waitForExecution(); - return runnable.getUserAgent(); + handler.post(task); + return task.get(1, TimeUnit.SECONDS); + } catch (InterruptedException e) { + throw new RuntimeException(e); + } catch (ExecutionException e) { + throw new RuntimeException(e); + } catch (TimeoutException e) { + throw new RuntimeException(e); } finally { handler.removeCallbacksAndMessages(null); } } - private static class FetchUserAgentRunnable implements Runnable { - - private final Context context; - private String userAgent; - private boolean userAgentSet; - - public FetchUserAgentRunnable(Context context) { - this.context = context; - } - - @Override - public void run() { - userAgent = getDefaultUserAgentString(context); - userAgentSet = true; - } - - public String getUserAgent() { - return userAgent; - } - - public void waitForExecution() { - //noinspection StatementWithEmptyBody - while (!userAgentSet) ; - } - } - @TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1) static class NewApiWrapper { private NewApiWrapper() { diff --git a/twidere/src/main/kotlin/org/mariotaku/twidere/extension/model/AccountExtensions.kt b/twidere/src/main/kotlin/org/mariotaku/twidere/extension/model/AccountExtensions.kt index 546579823..860de0127 100644 --- a/twidere/src/main/kotlin/org/mariotaku/twidere/extension/model/AccountExtensions.kt +++ b/twidere/src/main/kotlin/org/mariotaku/twidere/extension/model/AccountExtensions.kt @@ -169,7 +169,7 @@ internal object AccountDataQueue { } else handler.post { future.run() } - return future.get() + return future.get(1, TimeUnit.SECONDS) } fun peekAuthToken(manager: AccountManager, account: Account, authTokenType: String): String? { @@ -179,7 +179,7 @@ internal object AccountDataQueue { } else handler.post { future.run() } - return future.get() + return future.get(1, TimeUnit.SECONDS) } }