From e516841cc46126b87327d70338b057ed515121d1 Mon Sep 17 00:00:00 2001 From: sober Date: Wed, 5 Jun 2024 15:37:09 +0800 Subject: [PATCH 1/2] =?UTF-8?q?ref=EF=BC=9A=201=E3=80=81=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=9C=B0=E5=9D=80=E9=80=89=E6=8B=A9=E5=85=A8?= =?UTF-8?q?=E7=90=83github=E3=80=81gitee=E4=B8=AD=E5=9B=BD=202=E3=80=81?= =?UTF-8?q?=E5=8F=96=E6=B6=88=E5=8D=87=E7=BA=A7=E7=9A=84=E5=8A=A8=E6=80=81?= =?UTF-8?q?=E6=9D=83=E9=99=90=E7=94=B3=E8=AF=B7=EF=BC=8C=E5=BE=88=E5=A4=9A?= =?UTF-8?q?=E8=AE=BE=E5=A4=87=E4=B8=8A=E7=94=B3=E8=AF=B7=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=EF=BC=8C=E5=9C=A8AndroidManifest.xml=E4=B8=AD=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=AD=98=E5=82=A8=E8=AF=BB=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/AndroidManifest.xml | 1 + .../com/lizongying/mytv/SettingFragment.kt | 93 ++++++++++++------- app/src/main/res/layout/setting.xml | 7 ++ app/src/main/res/values/strings.xml | 1 + 4 files changed, 67 insertions(+), 35 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 3b862ee..ca10d10 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -12,6 +12,7 @@ + diff --git a/app/src/main/java/com/lizongying/mytv/SettingFragment.kt b/app/src/main/java/com/lizongying/mytv/SettingFragment.kt index 99618f9..5d91875 100644 --- a/app/src/main/java/com/lizongying/mytv/SettingFragment.kt +++ b/app/src/main/java/com/lizongying/mytv/SettingFragment.kt @@ -51,7 +51,6 @@ class SettingFragment : DialogFragment() { val context = requireContext() // It‘s safe to get context here. _binding = SettingBinding.inflate(inflater, container, false) binding.versionName.text = "当前版本: v${context.appVersionName}" - binding.version.text = "https://github.com/lizongying/my-tv" binding.switchChannelReversal.run { isChecked = SP.channelReversal @@ -93,6 +92,26 @@ class SettingFragment : DialogFragment() { } } + binding.switchUpdateUrl.run { + isChecked = SP.grid + setOnCheckedChangeListener { _, isChecked -> + SP.grid = isChecked + (activity as MainActivity).settingDelayHide() + + if (true == isChecked) { + binding.version.text = "https://gitee.com/lizongying/my-tv" + } else { + binding.version.text = "https://github.com/lizongying/my-tv" + } + } + + if (true == isChecked) { + binding.version.text = "https://gitee.com/lizongying/my-tv" + } else { + binding.version.text = "https://github.com/lizongying/my-tv" + } + } + binding.checkVersion.setOnClickListener { (activity as MainActivity).settingDelayHide() requestInstallPermissions() @@ -152,6 +171,9 @@ class SettingFragment : DialogFragment() { binding.switchGrid.textSize = textSize binding.switchGrid.layoutParams = layoutParamsChannelSwitch + binding.switchUpdateUrl.textSize = textSize + binding.switchUpdateUrl.layoutParams = layoutParamsChannelSwitch + binding.appreciate.layoutParams.width = application.px2Px(binding.appreciate.layoutParams.width) @@ -165,40 +187,41 @@ class SettingFragment : DialogFragment() { } private fun requestInstallPermissions() { - val context = requireContext() - val permissionsList: MutableList = ArrayList() - - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && !context.packageManager.canRequestPackageInstalls()) { - permissionsList.add(Manifest.permission.REQUEST_INSTALL_PACKAGES) - } - - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && - ContextCompat.checkSelfPermission( - context, - Manifest.permission.READ_EXTERNAL_STORAGE - ) != PackageManager.PERMISSION_GRANTED - ) { - permissionsList.add(Manifest.permission.READ_EXTERNAL_STORAGE) - } - - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && - ContextCompat.checkSelfPermission( - context, - Manifest.permission.WRITE_EXTERNAL_STORAGE - ) != PackageManager.PERMISSION_GRANTED - ) { - permissionsList.add(Manifest.permission.WRITE_EXTERNAL_STORAGE) - } - - if (permissionsList.isNotEmpty()) { - ActivityCompat.requestPermissions( - requireActivity(), - permissionsList.toTypedArray(), - PERMISSIONS_REQUEST_CODE - ) - } else { - updateManager.checkAndUpdate() - } +// val context = requireContext() +// val permissionsList = mutableListOf() +// +// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && !context.packageManager.canRequestPackageInstalls()) { +// permissionsList.add(Manifest.permission.REQUEST_INSTALL_PACKAGES) +// } +// +// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && +// ContextCompat.checkSelfPermission( +// context, +// Manifest.permission.READ_EXTERNAL_STORAGE +// ) != PackageManager.PERMISSION_GRANTED +// ) { +// permissionsList.add(Manifest.permission.READ_EXTERNAL_STORAGE) +// } +// +// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && +// ContextCompat.checkSelfPermission( +// context, +// Manifest.permission.WRITE_EXTERNAL_STORAGE +// ) != PackageManager.PERMISSION_GRANTED +// ) { +// permissionsList.add(Manifest.permission.WRITE_EXTERNAL_STORAGE) +// } +// +// if (permissionsList.isNotEmpty()) { +// ActivityCompat.requestPermissions( +// requireActivity(), +// permissionsList.toTypedArray(), +// PERMISSIONS_REQUEST_CODE +// ) +// } else { +// updateManager.checkAndUpdate() +// } + updateManager.checkAndUpdate() } override fun onRequestPermissionsResult( diff --git a/app/src/main/res/layout/setting.xml b/app/src/main/res/layout/setting.xml index 2146a89..101796e 100644 --- a/app/src/main/res/layout/setting.xml +++ b/app/src/main/res/layout/setting.xml @@ -108,6 +108,13 @@ android:layout_marginTop="5dp" android:layout_width="match_parent" android:layout_height="wrap_content" /> + 开机自启 频道列表采用网格样式 显示时间 + 更新地址,关闭全球,打开中国 恢复默认 退出应用 \ No newline at end of file From 9bf65cd0dcc7279e5ee8268c036027cff628a968 Mon Sep 17 00:00:00 2001 From: sober Date: Wed, 5 Jun 2024 22:53:59 +0800 Subject: [PATCH 2/2] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E5=A4=8D=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E5=8D=87=E7=BA=A7=E6=97=A0=E6=B3=95=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=AE=89=E8=A3=85apk?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/com/lizongying/mytv/UpdateWorker.kt | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/lizongying/mytv/UpdateWorker.kt b/app/src/main/java/com/lizongying/mytv/UpdateWorker.kt index 72221ad..4bc9182 100644 --- a/app/src/main/java/com/lizongying/mytv/UpdateWorker.kt +++ b/app/src/main/java/com/lizongying/mytv/UpdateWorker.kt @@ -123,16 +123,13 @@ class UpdateWorker(context: Context, params: WorkerParameters) : CoroutineWorker if (apkFile.exists()) { val apkUri: Uri = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { - FileProvider.getUriForFile(context, context.packageName + ".fileprovider", apkFile) - .apply { - Intent.FLAG_GRANT_READ_URI_PERMISSION - } + FileProvider.getUriForFile(context, "${context.packageName}.provider", apkFile) } else { Uri.parse("file://${apkFile.absolutePath}") -// Uri.fromFile(apkFile) } -// val apkUri = Uri.parse("file://$apkFile") + Log.i(TAG, "apkUri $apkUri") + val installIntent = Intent(Intent.ACTION_VIEW).apply { setDataAndType(apkUri, "application/vnd.android.package-archive") addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION or Intent.FLAG_ACTIVITY_NEW_TASK)