From 20ff016c626a45d29164aac5d3f66027c2055fb4 Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Tue, 4 Dec 2018 21:24:53 +0100 Subject: offer to start/install orbot for edit account screen. --- .../de/pixart/messenger/utils/TorServiceUtils.java | 43 ++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 src/main/java/de/pixart/messenger/utils/TorServiceUtils.java (limited to 'src/main/java/de/pixart/messenger/utils') diff --git a/src/main/java/de/pixart/messenger/utils/TorServiceUtils.java b/src/main/java/de/pixart/messenger/utils/TorServiceUtils.java new file mode 100644 index 000000000..6b4b93c78 --- /dev/null +++ b/src/main/java/de/pixart/messenger/utils/TorServiceUtils.java @@ -0,0 +1,43 @@ +package de.pixart.messenger.utils; + +import android.app.Activity; +import android.content.ActivityNotFoundException; +import android.content.Context; +import android.content.Intent; +import android.content.pm.PackageManager; +import android.net.Uri; + +import de.pixart.messenger.R; +import me.drakeet.support.toast.ToastCompat; + +public class TorServiceUtils { + + private final static String URI_ORBOT = "org.torproject.android"; + private static final Uri ORBOT_PLAYSTORE_URI = Uri.parse("market://details?id=" + URI_ORBOT); + private final static String ACTION_START_TOR = "org.torproject.android.START_TOR"; + + public static boolean isOrbotInstalled(Context context) { + try { + context.getPackageManager().getPackageInfo(URI_ORBOT, PackageManager.GET_ACTIVITIES); + return true; + } catch (PackageManager.NameNotFoundException e) { + return false; + } + } + + + public static void downloadOrbot(Activity activity, int requestCode) { + final Intent intent = new Intent(Intent.ACTION_VIEW, ORBOT_PLAYSTORE_URI); + try { + activity.startActivityForResult(intent, requestCode); + } catch (ActivityNotFoundException e) { + ToastCompat.makeText(activity, R.string.no_market_app_installed, ToastCompat.LENGTH_SHORT).show(); + } + } + + public static void startOrbot(Activity activity, int requestCode) { + final Intent launchIntent = new Intent(URI_ORBOT); + launchIntent.setAction(ACTION_START_TOR); + activity.startActivityForResult(launchIntent, requestCode); + } +} \ No newline at end of file -- cgit v1.2.3