优化:仅当开启自动检查且有网络时,App启动时自动检查更新

This commit is contained in:
pppscn 2023-12-14 16:47:02 +08:00
parent 437716cd4e
commit 33995b2ebd
7 changed files with 54 additions and 15 deletions

View File

@ -143,8 +143,8 @@ class MainActivity : BaseActivity<ActivityMainBinding?>(),
}
private fun initData() {
//仅当WIFI网络时自动检查更新/获取提示
if (NetworkUtils.isWifi() && NetworkUtils.isHaveInternet()) {
//仅当开启自动检查且有网络时自动检查更新/获取提示
if (SettingUtils.autoCheckUpdate && NetworkUtils.isHaveInternet()) {
showTips(this)
XUpdateInit.checkUpdate(this, false)
}

View File

@ -16,6 +16,7 @@ import com.idormy.sms.forwarder.utils.CommonUtils.Companion.previewMarkdown
import com.idormy.sms.forwarder.utils.CommonUtils.Companion.previewPicture
import com.idormy.sms.forwarder.utils.HistoryUtils
import com.idormy.sms.forwarder.utils.HttpServerUtils
import com.idormy.sms.forwarder.utils.SettingUtils
import com.idormy.sms.forwarder.utils.XToastUtils
import com.idormy.sms.forwarder.utils.sdkinit.XUpdateInit
import com.xuexiang.xaop.annotation.SingleClick
@ -29,7 +30,8 @@ import com.xuexiang.xutil.file.FileUtils
import frpclib.Frpclib
import java.io.File
import java.text.SimpleDateFormat
import java.util.*
import java.util.Date
import java.util.Locale
@Page(name = "关于软件")
class AboutFragment : BaseFragment<FragmentAboutBinding?>(), SuperTextView.OnSuperTextViewClickListener {
@ -62,6 +64,11 @@ class AboutFragment : BaseFragment<FragmentAboutBinding?>(), SuperTextView.OnSup
val dateFormat = SimpleDateFormat("yyyy", Locale.CHINA)
val currentYear = dateFormat.format(Date())
binding!!.copyright.text = java.lang.String.format(resources.getString(R.string.about_copyright), currentYear)
binding!!.scbAutoCheckUpdate.isChecked = SettingUtils.autoCheckUpdate
binding!!.scbAutoCheckUpdate.setOnCheckedChangeListener { _, isChecked ->
SettingUtils.autoCheckUpdate = isChecked
}
}
override fun initListeners() {
@ -117,6 +124,7 @@ class AboutFragment : BaseFragment<FragmentAboutBinding?>(), SuperTextView.OnSup
R.id.menu_donation -> {
previewMarkdown(this, getString(R.string.about_item_donation_link), getString(R.string.url_donation_link), false)
}
R.id.menu_wechat_miniprogram -> {
if (HttpServerUtils.safetyMeasures != 3) {
XToastUtils.error("微信小程序只支持SM4加密传输请前往主动控制·服务端修改安全措施")
@ -124,18 +132,23 @@ class AboutFragment : BaseFragment<FragmentAboutBinding?>(), SuperTextView.OnSup
}
previewPicture(this, getString(R.string.url_wechat_miniprogram), null)
}
R.id.menu_wecom_group -> {
previewPicture(this, getString(R.string.url_wework_group), null)
}
R.id.menu_dingtalk_group -> {
previewPicture(this, getString(R.string.url_dingtalk_group), null)
}
R.id.menu_qq_channel -> {
AgentWebActivity.goWeb(context, getString(R.string.url_qq_channel))
}
R.id.menu_user_protocol -> {
gotoProtocol(this, isPrivacy = false, isImmersive = false)
}
R.id.menu_privacy_protocol -> {
gotoProtocol(this, isPrivacy = true, isImmersive = false)
}

View File

@ -28,6 +28,7 @@ object TaskWorker {
}
//初始化相关
const val AUTO_CHECK_UPDATE = "auto_check_update"
const val IS_FIRST_OPEN_KEY = "is_first_open_key"
const val IS_AGREE_PRIVACY_KEY = "is_agree_privacy_key"

View File

@ -7,8 +7,8 @@ import com.xuexiang.xui.utils.ResUtils.getString
class SettingUtils private constructor() {
companion object {
//是否是第一次启动
//var isFirstOpen: Boolean by SharedPreference(IS_FIRST_OPEN_KEY, true)
//是否启动时检查更新
var autoCheckUpdate: Boolean by SharedPreference(AUTO_CHECK_UPDATE, true)
//是否同意隐私政策
var isAgreePrivacy: Boolean by SharedPreference(IS_AGREE_PRIVACY_KEY, false)

View File

@ -30,21 +30,44 @@
android:layout_marginTop="15dp"
app:sLeftTextString="@string/about_app_version">
<com.xuexiang.xui.widget.button.CountDownButton
android:id="@+id/btn_update"
style="@style/Button.Blue"
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginEnd="10dp"
android:layout_toStartOf="@id/sRightImgId"
android:minWidth="30dp"
android:minHeight="0dp"
android:padding="5dp"
android:text="@string/check_update"
android:textSize="11sp"
app:cdbt_countDown="3000"
app:cdbt_enableCountDown="true" />
android:gravity="center_vertical"
android:orientation="horizontal">
<com.xuexiang.xui.widget.button.SmoothCheckBox
android:id="@+id/scb_auto_check_update"
android:layout_width="15dp"
android:layout_height="15dp"
android:layout_marginStart="5dp"
app:scb_color_checked="@color/colorPrimary" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/auto_check"
android:textSize="10sp"
tools:ignore="SmallSp" />
<com.xuexiang.xui.widget.button.CountDownButton
android:id="@+id/btn_update"
style="@style/Button.Blue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:minWidth="30dp"
android:minHeight="0dp"
android:padding="5dp"
android:text="@string/check_update"
android:textSize="11sp"
app:cdbt_countDown="3000"
app:cdbt_enableCountDown="true" />
</LinearLayout>
</com.xuexiang.xui.widget.textview.supertextview.SuperTextView>

View File

@ -706,6 +706,7 @@
<string name="tip_can_not_get_sim_infos">Please confirm that the app permission [Get mobile phone information] is [Always allow]</string>
<string name="tip_can_not_get_sim_info">The SIM card information in the card slot %s has not been obtained</string>
<string name="add">Add</string>
<string name="auto_check">Auto check</string>
<string name="check_update">Check update</string>
<string name="clear_cache">Clear cache</string>
<string name="delete_frpc">Delete Frpc</string>

View File

@ -707,6 +707,7 @@
<string name="tip_can_not_get_sim_infos">无法获取卡槽信息,请确认应用权限【获取手机信息】为【始终允许】</string>
<string name="tip_can_not_get_sim_info">未获取到卡槽%s中的SIM卡信息</string>
<string name="add">添加</string>
<string name="auto_check">启动时检查</string>
<string name="check_update">检查更新</string>
<string name="clear_cache">清理缓存</string>
<string name="delete_frpc">删除动态库</string>