diff --git a/app/libs/frpclib.aar b/app/libs/frpclib.aar index 5c2da326..308855e3 100644 Binary files a/app/libs/frpclib.aar and b/app/libs/frpclib.aar differ diff --git a/app/src/main/java/com/idormy/sms/forwarder/activity/MainActivity.kt b/app/src/main/java/com/idormy/sms/forwarder/activity/MainActivity.kt index 87dc597b..8bfae38c 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/activity/MainActivity.kt +++ b/app/src/main/java/com/idormy/sms/forwarder/activity/MainActivity.kt @@ -36,6 +36,7 @@ import com.idormy.sms.forwarder.fragment.ServerFragment import com.idormy.sms.forwarder.fragment.SettingsFragment import com.idormy.sms.forwarder.fragment.TasksFragment import com.idormy.sms.forwarder.service.ForegroundService +import com.idormy.sms.forwarder.utils.CommonUtils.Companion.restartApplication import com.idormy.sms.forwarder.utils.EVENT_LOAD_APP_LIST import com.idormy.sms.forwarder.utils.FRPC_LIB_DOWNLOAD_URL import com.idormy.sms.forwarder.utils.FRPC_LIB_VERSION @@ -379,9 +380,7 @@ class MainActivity : BaseActivity(), DrawerAdapter.OnItemS .cancelable(false) .positiveText(R.string.confirm) .onPositive { _: MaterialDialog?, _: DialogAction? -> - val intent = Intent(App.context, MainActivity::class.java) - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK) - startActivity(intent) + restartApplication() } .show() } diff --git a/app/src/main/java/com/idormy/sms/forwarder/fragment/AboutFragment.kt b/app/src/main/java/com/idormy/sms/forwarder/fragment/AboutFragment.kt index 62095358..afabe562 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/fragment/AboutFragment.kt +++ b/app/src/main/java/com/idormy/sms/forwarder/fragment/AboutFragment.kt @@ -1,12 +1,9 @@ package com.idormy.sms.forwarder.fragment -import android.content.Intent import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import com.idormy.sms.forwarder.App import com.idormy.sms.forwarder.R -import com.idormy.sms.forwarder.activity.MainActivity import com.idormy.sms.forwarder.core.BaseFragment import com.idormy.sms.forwarder.core.webview.AgentWebActivity import com.idormy.sms.forwarder.databinding.FragmentAboutBinding @@ -15,6 +12,7 @@ import com.idormy.sms.forwarder.utils.CacheUtils import com.idormy.sms.forwarder.utils.CommonUtils.Companion.gotoProtocol import com.idormy.sms.forwarder.utils.CommonUtils.Companion.previewMarkdown import com.idormy.sms.forwarder.utils.CommonUtils.Companion.previewPicture +import com.idormy.sms.forwarder.utils.CommonUtils.Companion.restartApplication import com.idormy.sms.forwarder.utils.HistoryUtils import com.idormy.sms.forwarder.utils.HttpServerUtils import com.idormy.sms.forwarder.utils.Log @@ -93,9 +91,7 @@ class AboutFragment : BaseFragment(), SuperTextView.OnSup .cancelable(false) .positiveText(R.string.confirm) .onPositive { _: MaterialDialog?, _: DialogAction? -> - val intent = Intent(App.context, MainActivity::class.java) - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK) - startActivity(intent) + restartApplication() } .show() } catch (e: Exception) { diff --git a/app/src/main/java/com/idormy/sms/forwarder/utils/CommonUtils.kt b/app/src/main/java/com/idormy/sms/forwarder/utils/CommonUtils.kt index 339dddde..c789ab90 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/utils/CommonUtils.kt +++ b/app/src/main/java/com/idormy/sms/forwarder/utils/CommonUtils.kt @@ -17,6 +17,7 @@ import android.widget.EditText import androidx.annotation.ColorInt import androidx.core.app.NotificationManagerCompat import androidx.fragment.app.Fragment +import com.idormy.sms.forwarder.App import com.idormy.sms.forwarder.R import com.idormy.sms.forwarder.core.webview.AgentWebActivity import com.idormy.sms.forwarder.core.webview.AgentWebFragment @@ -315,6 +316,16 @@ class CommonUtils private constructor() { ipAddress } } + + fun restartApplication() { + val context = App.context + val packageManager = context.packageManager + val intent = packageManager.getLaunchIntentForPackage(context.packageName) + val componentName = intent?.component + val mainIntent = Intent.makeRestartActivityTask(componentName) + context.startActivity(mainIntent) + XUtil.exitApp() + } } init { diff --git a/app/src/main/java/com/idormy/sms/forwarder/utils/Constants.kt b/app/src/main/java/com/idormy/sms/forwarder/utils/Constants.kt index 1dde559a..fb0e5085 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/utils/Constants.kt +++ b/app/src/main/java/com/idormy/sms/forwarder/utils/Constants.kt @@ -76,6 +76,7 @@ const val SP_SMS_TEMPLATE = "sms_template" const val SP_PURE_CLIENT_MODE = "enable_pure_client_mode" const val SP_PURE_TASK_MODE = "enable_pure_task_mode" const val SP_DEBUG_MODE = "enable_debug_mode" +const val SP_ACCESSIBILITY_SERVICE = "enable_accessibility_service" const val SP_LOCATION = "enable_location" const val SP_LOCATION_ACCURACY = "location_accuracy" const val SP_LOCATION_POWER_REQUIREMENT = "location_power_requirement" @@ -142,7 +143,7 @@ const val FRONT_CHANNEL_NAME = "SmsForwarder Foreground Service" //Frp内网穿透 const val FRPC_LIB_DOWNLOAD_URL = "https://xupdate.ppps.cn/uploads/%s/%s/libgojni.so" -const val FRPC_LIB_VERSION = "0.47.0" +const val FRPC_LIB_VERSION = "0.53.2" const val EVENT_FRPC_UPDATE_CONFIG = "EVENT_FRPC_UPDATE_CONFIG" const val EVENT_FRPC_DELETE_CONFIG = "EVENT_FRPC_DELETE_CONFIG" const val EVENT_FRPC_RUNNING_ERROR = "EVENT_FRPC_RUNNING_ERROR"