From ad0d5b8b5a8d96a2f7e0d07885375c804ea5265b Mon Sep 17 00:00:00 2001 From: Mygod Date: Sat, 2 Jun 2018 09:29:10 +0800 Subject: [PATCH] Fix some misc issues --- .../src/main/java/be/mygod/vpnhotspot/manage/ManageBar.kt | 8 ++++++-- .../main/java/be/mygod/vpnhotspot/manage/TetherManager.kt | 5 ++++- .../java/be/mygod/vpnhotspot/manage/TetheringFragment.kt | 1 + 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/mobile/src/main/java/be/mygod/vpnhotspot/manage/ManageBar.kt b/mobile/src/main/java/be/mygod/vpnhotspot/manage/ManageBar.kt index 8570fad3..693cef05 100644 --- a/mobile/src/main/java/be/mygod/vpnhotspot/manage/ManageBar.kt +++ b/mobile/src/main/java/be/mygod/vpnhotspot/manage/ManageBar.kt @@ -22,8 +22,12 @@ object ManageBar : Manager() { context.startActivity(Intent() .setClassName("com.android.settings", "com.android.settings.Settings\$TetherSettingsActivity")) } catch (e: ActivityNotFoundException) { - context.startActivity(Intent() - .setClassName("com.android.settings", "com.android.settings.TetherSettings")) + try { + context.startActivity(Intent() + .setClassName("com.android.settings", "com.android.settings.TetherSettings")) + } catch (e: ActivityNotFoundException) { + e.printStackTrace() + } } } } diff --git a/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetherManager.kt b/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetherManager.kt index a35cea3f..09da8474 100644 --- a/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetherManager.kt +++ b/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetherManager.kt @@ -6,6 +6,7 @@ import android.arch.lifecycle.LifecycleObserver import android.arch.lifecycle.OnLifecycleEvent import android.bluetooth.BluetoothAdapter import android.bluetooth.BluetoothProfile +import android.content.ActivityNotFoundException import android.content.Intent import android.databinding.BaseObservable import android.net.Uri @@ -40,10 +41,12 @@ abstract class TetherManager private constructor(protected val parent: Tethering override fun onClick(v: View?) { val manager = manager!! val context = manager.parent.requireContext() - if (Build.VERSION.SDK_INT >= 23 && !Settings.System.canWrite(context)) { + if (Build.VERSION.SDK_INT >= 23 && !Settings.System.canWrite(context)) try { manager.parent.startActivity(Intent(Settings.ACTION_MANAGE_WRITE_SETTINGS, Uri.parse("package:${context.packageName}"))) return + } catch (exc: ActivityNotFoundException) { + exc.printStackTrace() } val started = manager.isStarted try { diff --git a/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetheringFragment.kt b/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetheringFragment.kt index 34124a16..27a71525 100644 --- a/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetheringFragment.kt +++ b/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetheringFragment.kt @@ -95,6 +95,7 @@ class TetheringFragment : Fragment(), ServiceConnection { binding.interfaces.layoutManager = LinearLayoutManager(context, LinearLayoutManager.VERTICAL, false) binding.interfaces.itemAnimator = DefaultItemAnimator() binding.interfaces.adapter = adapter + adapter.update(emptyList(), emptyList()) ServiceForegroundConnector(this, this, TetheringService::class) return binding.root }