From c2a704a6ea56a384219292973387ddd136ff709a Mon Sep 17 00:00:00 2001 From: yuhan6665 <1588741+yuhan6665@users.noreply.github.com> Date: Sat, 3 Oct 2020 11:19:46 -0400 Subject: [PATCH] Deprecate some anko function - Replace toast with inline function - Use standard startActivityForResult --- V2rayNG/app/build.gradle | 3 --- .../main/kotlin/com/v2ray/ang/extension/_Ext.kt | 12 ++++++++++++ .../kotlin/com/v2ray/ang/ui/LogcatActivity.kt | 2 +- .../main/kotlin/com/v2ray/ang/ui/MainActivity.kt | 4 ++-- .../com/v2ray/ang/ui/MainRecyclerAdapter.kt | 2 +- .../com/v2ray/ang/ui/PerAppProxyActivity.kt | 2 +- .../com/v2ray/ang/ui/RoutingSettingsFragment.kt | 15 ++++----------- .../kotlin/com/v2ray/ang/ui/ScScannerActivity.kt | 8 ++++---- .../kotlin/com/v2ray/ang/ui/ScannerActivity.kt | 12 +----------- .../kotlin/com/v2ray/ang/ui/Server2Activity.kt | 4 ++-- .../kotlin/com/v2ray/ang/ui/Server3Activity.kt | 4 ++-- .../kotlin/com/v2ray/ang/ui/Server4Activity.kt | 4 ++-- .../kotlin/com/v2ray/ang/ui/ServerActivity.kt | 4 ++-- .../kotlin/com/v2ray/ang/ui/SettingsActivity.kt | 2 +- .../kotlin/com/v2ray/ang/ui/SubEditActivity.kt | 4 ++-- .../src/main/kotlin/com/v2ray/ang/util/Utils.kt | 3 +-- 16 files changed, 38 insertions(+), 47 deletions(-) diff --git a/V2rayNG/app/build.gradle b/V2rayNG/app/build.gradle index a0cb7c43..1352b28a 100644 --- a/V2rayNG/app/build.gradle +++ b/V2rayNG/app/build.gradle @@ -82,9 +82,6 @@ dependencies { // DSL implementation "org.jetbrains.anko:anko-sdk15:$ankoVersion" - implementation "org.jetbrains.anko:anko-support-v4:$ankoVersion" - implementation "org.jetbrains.anko:anko-appcompat-v7:$ankoVersion" - implementation "org.jetbrains.anko:anko-design:$ankoVersion" implementation 'com.google.code.gson:gson:2.8.6' implementation 'io.reactivex:rxjava:1.3.4' implementation 'io.reactivex:rxandroid:1.2.1' diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/extension/_Ext.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/extension/_Ext.kt index a1cc220c..5e74b662 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/extension/_Ext.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/extension/_Ext.kt @@ -2,6 +2,7 @@ package com.v2ray.ang.extension import android.content.Context import android.os.Build +import android.widget.Toast import com.v2ray.ang.AngApplication import me.dozen.dpreference.DPreference import org.json.JSONObject @@ -17,6 +18,17 @@ val Context.v2RayApplication: AngApplication val Context.defaultDPreference: DPreference get() = v2RayApplication.defaultDPreference +inline fun Context.toast(message: Int): Toast = Toast + .makeText(this, message, Toast.LENGTH_SHORT) + .apply { + show() + } + +inline fun Context.toast(message: CharSequence): Toast = Toast + .makeText(this, message, Toast.LENGTH_SHORT) + .apply { + show() + } fun JSONObject.putOpt(pair: Pair) = putOpt(pair.first, pair.second)!! fun JSONObject.putOpt(pairs: Map) = pairs.forEach { putOpt(it.key to it.value) } diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/LogcatActivity.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/LogcatActivity.kt index d56395b8..e4f5205c 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/LogcatActivity.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/LogcatActivity.kt @@ -8,10 +8,10 @@ import android.view.Menu import android.view.MenuItem import android.view.View import com.v2ray.ang.R +import com.v2ray.ang.extension.toast import com.v2ray.ang.util.Utils import kotlinx.android.synthetic.main.activity_logcat.* import org.jetbrains.anko.doAsync -import org.jetbrains.anko.toast import org.jetbrains.anko.uiThread import java.io.IOException diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/MainActivity.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/MainActivity.kt index f4c1148c..04ae2f7b 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/MainActivity.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/MainActivity.kt @@ -30,7 +30,7 @@ import android.util.Log import com.v2ray.ang.BuildConfig import com.v2ray.ang.dto.EConfigType import com.v2ray.ang.extension.defaultDPreference -//import com.v2ray.ang.InappBuyActivity +import com.v2ray.ang.extension.toast import rx.Observable import rx.android.schedulers.AndroidSchedulers import java.util.concurrent.TimeUnit @@ -306,7 +306,7 @@ class MainActivity : BaseActivity(), NavigationView.OnNavigationItemSelectedList .request(Manifest.permission.CAMERA) .subscribe { if (it) - startActivityForResult(requestCode) + startActivityForResult(Intent(this, ScannerActivity::class.java), requestCode) else toast(R.string.toast_permission_denied) } diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/MainRecyclerAdapter.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/MainRecyclerAdapter.kt index cb675384..a84ef8ea 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/MainRecyclerAdapter.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/MainRecyclerAdapter.kt @@ -9,7 +9,7 @@ import com.v2ray.ang.AppConfig import com.v2ray.ang.R import com.v2ray.ang.dto.AngConfig import com.v2ray.ang.dto.EConfigType -import com.v2ray.ang.extension.defaultDPreference +import com.v2ray.ang.extension.toast import com.v2ray.ang.helper.ItemTouchHelperAdapter import com.v2ray.ang.helper.ItemTouchHelperViewHolder import com.v2ray.ang.util.AngConfigManager diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/PerAppProxyActivity.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/PerAppProxyActivity.kt index d154d4d3..837b26df 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/PerAppProxyActivity.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/PerAppProxyActivity.kt @@ -26,10 +26,10 @@ import android.view.inputmethod.EditorInfo import android.view.inputmethod.InputMethodManager import com.v2ray.ang.AppConfig import com.v2ray.ang.dto.AppInfo +import com.v2ray.ang.extension.toast import com.v2ray.ang.extension.v2RayApplication import com.v2ray.ang.util.Utils import org.jetbrains.anko.doAsync -import org.jetbrains.anko.toast import org.jetbrains.anko.uiThread import java.net.URL diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/RoutingSettingsFragment.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/RoutingSettingsFragment.kt index 492829ed..67d88aa5 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/RoutingSettingsFragment.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/RoutingSettingsFragment.kt @@ -1,30 +1,23 @@ package com.v2ray.ang.ui - import android.Manifest import android.app.Activity.RESULT_OK import android.content.Intent import android.os.Bundle import android.support.v4.app.Fragment -import android.text.TextUtils -import android.util.Log import android.view.* import com.v2ray.ang.R import com.v2ray.ang.extension.defaultDPreference import com.v2ray.ang.util.Utils import kotlinx.android.synthetic.main.fragment_routing_settings.* -import org.jetbrains.anko.toast import android.view.MenuInflater import com.tbruyelle.rxpermissions.RxPermissions import com.v2ray.ang.AppConfig +import com.v2ray.ang.extension.toast import org.jetbrains.anko.doAsync -import org.jetbrains.anko.startActivityForResult -import org.jetbrains.anko.support.v4.startActivityForResult -import org.jetbrains.anko.support.v4.toast import org.jetbrains.anko.uiThread import java.net.URL - class RoutingSettingsFragment : Fragment() { companion object { private const val routing_arg = "routing_arg" @@ -96,7 +89,7 @@ class RoutingSettingsFragment : Fragment() { .request(Manifest.permission.CAMERA) .subscribe { if (it) - startActivityForResult(requestCode) + startActivityForResult(Intent(activity, ScannerActivity::class.java), requestCode) else activity?.toast(R.string.toast_permission_denied) } @@ -118,12 +111,12 @@ class RoutingSettingsFragment : Fragment() { } } - toast(R.string.msg_downloading_content) + activity?.toast(R.string.msg_downloading_content) doAsync { val content = URL(url).readText() uiThread { et_routing_content.text = Utils.getEditable(content!!) - toast(R.string.toast_success) + activity?.toast(R.string.toast_success) } } return true diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ScScannerActivity.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ScScannerActivity.kt index b3cd04bb..23297e76 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ScScannerActivity.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ScScannerActivity.kt @@ -6,7 +6,7 @@ import com.tbruyelle.rxpermissions.RxPermissions import com.v2ray.ang.R import com.v2ray.ang.util.AngConfigManager import android.os.Bundle -import org.jetbrains.anko.* +import com.v2ray.ang.extension.toast class ScScannerActivity : BaseActivity() { companion object { @@ -24,7 +24,7 @@ class ScScannerActivity : BaseActivity() { .request(Manifest.permission.CAMERA) .subscribe { if (it) - startActivityForResult(requestCode) + startActivityForResult(Intent(this, ScannerActivity::class.java), requestCode) else toast(R.string.toast_permission_denied) } @@ -43,10 +43,10 @@ class ScScannerActivity : BaseActivity() { } else { toast(R.string.toast_failure) } - startActivity() + startActivity(Intent(this, MainActivity::class.java)) } } finish() } -} \ No newline at end of file +} diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ScannerActivity.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ScannerActivity.kt index eff431da..6f1dafd1 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ScannerActivity.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ScannerActivity.kt @@ -7,23 +7,13 @@ import com.google.zxing.Result import me.dm7.barcodescanner.zxing.ZXingScannerView import android.content.Intent import android.graphics.BitmapFactory -import android.icu.util.TimeUnit import android.view.Menu import android.view.MenuItem import com.google.zxing.BarcodeFormat import com.tbruyelle.rxpermissions.RxPermissions import com.v2ray.ang.R +import com.v2ray.ang.extension.toast import com.v2ray.ang.util.QRCodeDecoder -import org.jetbrains.anko.toast -import rx.Observable -import android.os.SystemClock -import kotlinx.android.synthetic.main.activity_main.* -import rx.Observer -import rx.android.schedulers.AndroidSchedulers -import javax.xml.datatype.DatatypeConstants.SECONDS - - - class ScannerActivity : BaseActivity(), ZXingScannerView.ResultHandler { companion object { diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server2Activity.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server2Activity.kt index bdfba4c2..02ee56ae 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server2Activity.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server2Activity.kt @@ -10,13 +10,13 @@ import com.v2ray.ang.AppConfig import com.v2ray.ang.R import com.v2ray.ang.extension.defaultDPreference import com.v2ray.ang.dto.AngConfig +import com.v2ray.ang.extension.toast import com.v2ray.ang.util.AngConfigManager import com.v2ray.ang.util.Utils import kotlinx.android.synthetic.main.activity_server2.* import org.jetbrains.anko.* import java.lang.Exception - class Server2Activity : BaseActivity() { companion object { private const val REQUEST_SCAN = 1 @@ -158,4 +158,4 @@ class Server2Activity : BaseActivity() { } else -> super.onOptionsItemSelected(item) } -} \ No newline at end of file +} diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server3Activity.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server3Activity.kt index 92ee6e2f..248feb1e 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server3Activity.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server3Activity.kt @@ -6,12 +6,12 @@ import android.view.Menu import android.view.MenuItem import com.v2ray.ang.R import com.v2ray.ang.dto.AngConfig +import com.v2ray.ang.extension.toast import com.v2ray.ang.util.AngConfigManager import com.v2ray.ang.util.Utils import kotlinx.android.synthetic.main.activity_server3.* import org.jetbrains.anko.* - class Server3Activity : BaseActivity() { companion object { private const val REQUEST_SCAN = 1 @@ -172,4 +172,4 @@ class Server3Activity : BaseActivity() { } else -> super.onOptionsItemSelected(item) } -} \ No newline at end of file +} diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server4Activity.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server4Activity.kt index 97fb4d63..b4b9d007 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server4Activity.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/Server4Activity.kt @@ -6,12 +6,12 @@ import android.view.Menu import android.view.MenuItem import com.v2ray.ang.R import com.v2ray.ang.dto.AngConfig +import com.v2ray.ang.extension.toast import com.v2ray.ang.util.AngConfigManager import com.v2ray.ang.util.Utils import kotlinx.android.synthetic.main.activity_server4.* import org.jetbrains.anko.* - class Server4Activity : BaseActivity() { companion object { private const val REQUEST_SCAN = 1 @@ -156,4 +156,4 @@ class Server4Activity : BaseActivity() { } else -> super.onOptionsItemSelected(item) } -} \ No newline at end of file +} diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ServerActivity.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ServerActivity.kt index d2a14035..ae753cd3 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ServerActivity.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/ServerActivity.kt @@ -6,12 +6,12 @@ import android.view.Menu import android.view.MenuItem import com.v2ray.ang.R import com.v2ray.ang.dto.AngConfig +import com.v2ray.ang.extension.toast import com.v2ray.ang.util.AngConfigManager import com.v2ray.ang.util.Utils import kotlinx.android.synthetic.main.activity_server.* import org.jetbrains.anko.* - class ServerActivity : BaseActivity() { companion object { private const val REQUEST_SCAN = 1 @@ -215,4 +215,4 @@ class ServerActivity : BaseActivity() { } else -> super.onOptionsItemSelected(item) } -} \ No newline at end of file +} diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/SettingsActivity.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/SettingsActivity.kt index b46eff3f..476d85b2 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/SettingsActivity.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/SettingsActivity.kt @@ -5,10 +5,10 @@ import android.support.v7.preference.* import android.view.View import com.v2ray.ang.R import com.v2ray.ang.AppConfig +import com.v2ray.ang.extension.toast import com.v2ray.ang.util.Utils import org.jetbrains.anko.defaultSharedPreferences import org.jetbrains.anko.startActivity -import org.jetbrains.anko.toast class SettingsActivity : BaseActivity() { companion object { diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/SubEditActivity.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/SubEditActivity.kt index d8cb7d2e..dfb6a716 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/SubEditActivity.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/ui/SubEditActivity.kt @@ -6,12 +6,12 @@ import android.view.Menu import android.view.MenuItem import com.v2ray.ang.R import com.v2ray.ang.dto.AngConfig +import com.v2ray.ang.extension.toast import com.v2ray.ang.util.AngConfigManager import com.v2ray.ang.util.Utils import kotlinx.android.synthetic.main.activity_sub_edit.* import org.jetbrains.anko.* - class SubEditActivity : BaseActivity() { var del_config: MenuItem? = null @@ -135,4 +135,4 @@ class SubEditActivity : BaseActivity() { } else -> super.onOptionsItemSelected(item) } -} \ No newline at end of file +} diff --git a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/util/Utils.kt b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/util/Utils.kt index efcdde4d..8189b31b 100644 --- a/V2rayNG/app/src/main/kotlin/com/v2ray/ang/util/Utils.kt +++ b/V2rayNG/app/src/main/kotlin/com/v2ray/ang/util/Utils.kt @@ -24,18 +24,17 @@ import com.v2ray.ang.AppConfig import com.v2ray.ang.R import com.v2ray.ang.dto.EConfigType import com.v2ray.ang.extension.responseLength +import com.v2ray.ang.extension.toast import com.v2ray.ang.extension.v2RayApplication import com.v2ray.ang.service.V2RayServiceManager import com.v2ray.ang.ui.SettingsActivity import kotlinx.coroutines.isActive import me.dozen.dpreference.DPreference -import org.jetbrains.anko.toast import java.io.IOException import java.net.* import libv2ray.Libv2ray import kotlin.coroutines.coroutineContext - object Utils { val tcpTestingSockets = ArrayList()