From c7fc4095ff51f43bc0176ce810f67827d9b65ff9 Mon Sep 17 00:00:00 2001 From: Mygod Date: Tue, 16 Aug 2016 10:26:52 +0800 Subject: [PATCH] Remove compatibility code for Jelly Bean --- src/main/res/values-ru/strings.xml | 3 +-- src/main/res/values-zh-rCN/strings.xml | 3 +-- src/main/res/values-zh/strings.xml | 3 +-- src/main/res/values/strings.xml | 3 +-- src/main/res/xml/pref_all.xml | 2 +- .../com/github/shadowsocks/Shadowsocks.scala | 3 --- .../shadowsocks/ShadowsocksSettings.scala | 6 ++---- .../com/github/shadowsocks/utils/Utils.scala | 21 +------------------ 8 files changed, 8 insertions(+), 36 deletions(-) diff --git a/src/main/res/values-ru/strings.xml b/src/main/res/values-ru/strings.xml index 9a51b96d..a7e489d0 100644 --- a/src/main/res/values-ru/strings.xml +++ b/src/main/res/values-ru/strings.xml @@ -92,8 +92,7 @@ Сканировать QR код\nAndroid Beam отключен Включить NFC & Android Beam Очистить кэш DNS - Работает только в режиме NAT - Работает только в режиме NAT. Требует наличия ROOT прав. + Работает только в режиме NAT. Требует наличия ROOT прав. Очистка кэша DNS не работает без налиичя ROOT прав Очистка Добавить Профиль diff --git a/src/main/res/values-zh-rCN/strings.xml b/src/main/res/values-zh-rCN/strings.xml index 40252f06..2823c53d 100644 --- a/src/main/res/values-zh-rCN/strings.xml +++ b/src/main/res/values-zh-rCN/strings.xml @@ -58,8 +58,7 @@ 关于 影梭(shadowsocks)%s 刷新 DNS 缓存 - 只需在 NAT 模式下使用 - 只需在 NAT 模式下使用,需要 ROOT 权限 + 只需在 NAT 模式下使用,需要 ROOT 权限 在没有 ROOT 权限的情况下无法刷新 DNS 缓存 刷新中…… 分享 diff --git a/src/main/res/values-zh/strings.xml b/src/main/res/values-zh/strings.xml index 76bd9b08..2f15dab4 100644 --- a/src/main/res/values-zh/strings.xml +++ b/src/main/res/values-zh/strings.xml @@ -59,8 +59,7 @@ 關於 Shadowsocks %s 清除 DNS 快取 - 僅在 NAT 模式可用 - 僅在 NAT 模式可用,需要 ROOT 權限 + 僅在 NAT 模式可用,需要 ROOT 權限 在無 ROOT 權限時清除 DNS 快取無法進行 清除中…… 分享 diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index d13dc92a..ac007a7d 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -98,8 +98,7 @@ Scan QR code\nAndroid Beam is disabled Turn on NFC & Android Beam Flush DNS cache - Only useful in NAT mode - Only useful in NAT mode. Requires ROOT permission. + Only useful in NAT mode. Requires ROOT permission. Flush DNS cache cannot proceed without ROOT permission Flushing Add Profile diff --git a/src/main/res/xml/pref_all.xml b/src/main/res/xml/pref_all.xml index 6c85273b..503ca76f 100644 --- a/src/main/res/xml/pref_all.xml +++ b/src/main/res/xml/pref_all.xml @@ -117,7 +117,7 @@ android:summary="@string/recovery_summary"/> + android:summary="@string/flush_dnscache_summary"/> diff --git a/src/main/scala/com/github/shadowsocks/Shadowsocks.scala b/src/main/scala/com/github/shadowsocks/Shadowsocks.scala index 5ee2b851..25cde98c 100644 --- a/src/main/scala/com/github/shadowsocks/Shadowsocks.scala +++ b/src/main/scala/com/github/shadowsocks/Shadowsocks.scala @@ -500,11 +500,8 @@ class Shadowsocks extends AppCompatActivity with ServiceBoundContext { clearDialog() } - private var _isDestroyed: Boolean = _ - override def isDestroyed = if (Build.VERSION.SDK_INT >= 17) super.isDestroyed else _isDestroyed override def onDestroy() { super.onDestroy() - _isDestroyed = true detachService() new BackupManager(this).dataChanged() handler.removeCallbacksAndMessages(null) diff --git a/src/main/scala/com/github/shadowsocks/ShadowsocksSettings.scala b/src/main/scala/com/github/shadowsocks/ShadowsocksSettings.scala index fe02b325..758b9558 100644 --- a/src/main/scala/com/github/shadowsocks/ShadowsocksSettings.scala +++ b/src/main/scala/com/github/shadowsocks/ShadowsocksSettings.scala @@ -5,7 +5,7 @@ import java.util.Locale import android.content.SharedPreferences.OnSharedPreferenceChangeListener import android.content.{Intent, SharedPreferences} import android.net.Uri -import android.os.{Build, Bundle} +import android.os.Bundle import android.preference.{Preference, PreferenceFragment, SwitchPreference} import android.support.v7.app.AlertDialog import android.webkit.{WebView, WebViewClient} @@ -160,9 +160,7 @@ class ShadowsocksSettings extends PreferenceFragment with OnSharedPreferenceChan true }) - val flush = findPreference("flush_dnscache") - if (Build.VERSION.SDK_INT < 17) flush.setSummary(R.string.flush_dnscache_summary) - flush.setOnPreferenceClickListener(_ => { + findPreference("flush_dnscache").setOnPreferenceClickListener(_ => { app.track(TAG, "flush_dnscache") activity.flushDnsCache() true diff --git a/src/main/scala/com/github/shadowsocks/utils/Utils.scala b/src/main/scala/com/github/shadowsocks/utils/Utils.scala index 1b2abdcd..bb7d78d9 100644 --- a/src/main/scala/com/github/shadowsocks/utils/Utils.scala +++ b/src/main/scala/com/github/shadowsocks/utils/Utils.scala @@ -46,7 +46,6 @@ import android.content.pm.PackageManager import android.content.{Context, Intent} import android.graphics._ import android.os.Build -import android.provider.Settings import android.util.{Base64, DisplayMetrics, Log} import android.view.View.MeasureSpec import android.view.{Gravity, View, Window} @@ -128,25 +127,7 @@ object Utils { // Blocked > 3 seconds def toggleAirplaneMode(context: Context) = { val result = Shell.SU.run(FLUSH_DNS) - if (result != null && !result.isEmpty) true else if (Build.VERSION.SDK_INT < 17) { - toggleBelowApiLevel17(context) - true - } else false - } - - //noinspection ScalaDeprecation - private def toggleBelowApiLevel17(context: Context) { - // Android 4.2 below - Settings.System.putInt(context.getContentResolver, Settings.System.AIRPLANE_MODE_ON, 1) - val enableIntent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED) - enableIntent.putExtra("state", true) - context.sendBroadcast(enableIntent) - Thread.sleep(3000) - - Settings.System.putInt(context.getContentResolver, Settings.System.AIRPLANE_MODE_ON, 0) - val disableIntent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED) - disableIntent.putExtra("state", false) - context.sendBroadcast(disableIntent) + result != null && !result.isEmpty } def resolve(host: String, addrType: Int): Option[String] = {