mirror of
https://github.com/fankes/ColorOSNotifyIcon.git
synced 2025-09-06 02:35:41 +08:00
Merge code
This commit is contained in:
@@ -24,11 +24,8 @@
|
|||||||
|
|
||||||
package com.fankes.coloros.notify.ui.activity
|
package com.fankes.coloros.notify.ui.activity
|
||||||
|
|
||||||
import android.app.Notification
|
|
||||||
import android.content.ComponentName
|
import android.content.ComponentName
|
||||||
import android.content.Intent
|
|
||||||
import android.content.pm.PackageManager
|
import android.content.pm.PackageManager
|
||||||
import android.provider.Settings
|
|
||||||
import androidx.core.view.isVisible
|
import androidx.core.view.isVisible
|
||||||
import com.fankes.coloros.notify.BuildConfig
|
import com.fankes.coloros.notify.BuildConfig
|
||||||
import com.fankes.coloros.notify.R
|
import com.fankes.coloros.notify.R
|
||||||
@@ -102,16 +99,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
|
|||||||
showDialog {
|
showDialog {
|
||||||
title = "模块的通知权限已关闭"
|
title = "模块的通知权限已关闭"
|
||||||
msg = "请开启通知权限,以确保你能收到通知优化图标在线规则的更新。"
|
msg = "请开启通知权限,以确保你能收到通知优化图标在线规则的更新。"
|
||||||
confirmButton {
|
confirmButton { openNotifySetting() }
|
||||||
runCatching {
|
|
||||||
Intent().also { intent ->
|
|
||||||
intent.action = Settings.ACTION_APP_NOTIFICATION_SETTINGS
|
|
||||||
intent.putExtra(Settings.EXTRA_APP_PACKAGE, packageName)
|
|
||||||
intent.putExtra(Notification.EXTRA_CHANNEL_ID, applicationInfo.uid)
|
|
||||||
startActivity(intent)
|
|
||||||
}
|
|
||||||
}.onFailure { snake(msg = "跳转通知设置失败") }
|
|
||||||
}
|
|
||||||
cancelButton()
|
cancelButton()
|
||||||
noCancelable()
|
noCancelable()
|
||||||
}
|
}
|
||||||
|
@@ -25,6 +25,7 @@
|
|||||||
package com.fankes.coloros.notify.utils.factory
|
package com.fankes.coloros.notify.utils.factory
|
||||||
|
|
||||||
import android.app.Activity
|
import android.app.Activity
|
||||||
|
import android.app.Notification
|
||||||
import android.app.WallpaperManager
|
import android.app.WallpaperManager
|
||||||
import android.app.WallpaperManager.FLAG_SYSTEM
|
import android.app.WallpaperManager.FLAG_SYSTEM
|
||||||
import android.content.ClipData
|
import android.content.ClipData
|
||||||
@@ -355,6 +356,16 @@ fun Context.openSelfSetting(packageName: String = appContext.packageName) = runC
|
|||||||
else toast(msg = "你没有安装此应用")
|
else toast(msg = "你没有安装此应用")
|
||||||
}.onFailure { toast(msg = "启动 $packageName 应用信息失败") }
|
}.onFailure { toast(msg = "启动 $packageName 应用信息失败") }
|
||||||
|
|
||||||
|
/** 跳转通知设置界面 */
|
||||||
|
fun Context.openNotifySetting() = runCatching {
|
||||||
|
Intent().also { intent ->
|
||||||
|
intent.action = Settings.ACTION_APP_NOTIFICATION_SETTINGS
|
||||||
|
intent.putExtra(Settings.EXTRA_APP_PACKAGE, packageName)
|
||||||
|
intent.putExtra(Notification.EXTRA_CHANNEL_ID, applicationInfo.uid)
|
||||||
|
startActivity(intent)
|
||||||
|
}
|
||||||
|
}.onFailure { snake(msg = "跳转通知设置失败") }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 复制到剪贴板
|
* 复制到剪贴板
|
||||||
* @param content 要复制的文本
|
* @param content 要复制的文本
|
||||||
|
@@ -50,9 +50,7 @@ import com.fankes.coloros.notify.hook.HookConst.TYPE_SOURCE_SYNC_WAY_2
|
|||||||
import com.fankes.coloros.notify.hook.HookConst.TYPE_SOURCE_SYNC_WAY_3
|
import com.fankes.coloros.notify.hook.HookConst.TYPE_SOURCE_SYNC_WAY_3
|
||||||
import com.fankes.coloros.notify.param.IconPackParams
|
import com.fankes.coloros.notify.param.IconPackParams
|
||||||
import com.fankes.coloros.notify.ui.activity.ConfigureActivity
|
import com.fankes.coloros.notify.ui.activity.ConfigureActivity
|
||||||
import com.fankes.coloros.notify.utils.factory.safeOfNull
|
import com.fankes.coloros.notify.utils.factory.*
|
||||||
import com.fankes.coloros.notify.utils.factory.showDialog
|
|
||||||
import com.fankes.coloros.notify.utils.factory.snake
|
|
||||||
import com.highcapable.yukihookapi.hook.factory.modulePrefs
|
import com.highcapable.yukihookapi.hook.factory.modulePrefs
|
||||||
import com.highcapable.yukihookapi.hook.log.loggerD
|
import com.highcapable.yukihookapi.hook.log.loggerD
|
||||||
import okhttp3.*
|
import okhttp3.*
|
||||||
@@ -366,7 +364,13 @@ object IconRuleManagerTool {
|
|||||||
*/
|
*/
|
||||||
fun refreshSystemUI(context: Context) {
|
fun refreshSystemUI(context: Context) {
|
||||||
if (context !is AppCompatActivity) return
|
if (context !is AppCompatActivity) return
|
||||||
context.showDialog {
|
if (isNotNoificationEnabled) context.showDialog {
|
||||||
|
title = "模块的通知权限已关闭"
|
||||||
|
msg = "请开启通知权限然后重启系统界面,否则无法动态刷新系统界面使更改生效。"
|
||||||
|
confirmButton { context.openNotifySetting() }
|
||||||
|
cancelButton()
|
||||||
|
noCancelable()
|
||||||
|
} else context.showDialog {
|
||||||
title = "请稍后"
|
title = "请稍后"
|
||||||
progressContent = "正在刷新系统界面改变"
|
progressContent = "正在刷新系统界面改变"
|
||||||
/** 发送通知提醒宿主更新图标缓存 */
|
/** 发送通知提醒宿主更新图标缓存 */
|
||||||
|
@@ -23,7 +23,10 @@
|
|||||||
package com.fankes.coloros.notify.utils.tool
|
package com.fankes.coloros.notify.utils.tool
|
||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import com.fankes.coloros.notify.utils.factory.*
|
import com.fankes.coloros.notify.utils.factory.execShellSu
|
||||||
|
import com.fankes.coloros.notify.utils.factory.showDialog
|
||||||
|
import com.fankes.coloros.notify.utils.factory.snake
|
||||||
|
import com.fankes.coloros.notify.utils.factory.toast
|
||||||
import com.google.android.material.snackbar.Snackbar
|
import com.google.android.material.snackbar.Snackbar
|
||||||
import com.highcapable.yukihookapi.hook.factory.isXposedModuleActive
|
import com.highcapable.yukihookapi.hook.factory.isXposedModuleActive
|
||||||
|
|
||||||
@@ -71,9 +74,6 @@ object SystemUITool {
|
|||||||
* @param context 实例
|
* @param context 实例
|
||||||
*/
|
*/
|
||||||
fun showNeedUpdateApplySnake(context: Context) =
|
fun showNeedUpdateApplySnake(context: Context) =
|
||||||
if (isXposedModuleActive)
|
if (isXposedModuleActive) context.snake(msg = "通知图标优化名单已完成同步")
|
||||||
if (isNotNoificationEnabled)
|
|
||||||
context.snake(msg = "无通知权限,请重启系统界面使更改生效", actionText = "立即重启") { restartSystemUI(context) }
|
|
||||||
else context.snake(msg = "通知图标优化名单已完成同步")
|
|
||||||
else context.snake(msg = "模块没有激活,更改不会生效")
|
else context.snake(msg = "模块没有激活,更改不会生效")
|
||||||
}
|
}
|
Reference in New Issue
Block a user