mirror of
https://github.com/AIsouler/GKD_subscription.git
synced 2025-12-20 08:44:55 +08:00
perf: globalDefaultApps
This commit is contained in:
130
src/globalDefaultApps.ts
Normal file
130
src/globalDefaultApps.ts
Normal file
@@ -0,0 +1,130 @@
|
|||||||
|
import apps from './rawApps';
|
||||||
|
|
||||||
|
// 全局禁用
|
||||||
|
export const blackListAppIDs: string[] = [
|
||||||
|
// 在一些非系统应用中禁用
|
||||||
|
'com.tencent.mm', // 微信
|
||||||
|
'li.songe.gkd', // GKD
|
||||||
|
'com.eg.android.AlipayGphone', //支付宝
|
||||||
|
'com.tencent.wetype', // 微信输入法
|
||||||
|
'com.tmri.app.main', // 交管12123
|
||||||
|
'com.github.android', // GitHub
|
||||||
|
'org.telegram.messenger', // Telegram
|
||||||
|
'com.twitter.android', // X(推特)
|
||||||
|
'com.aistra.hail', // 雹
|
||||||
|
'com.heyanle.easybangumi4', // 纯纯看番
|
||||||
|
'com.perol.pixez', // PixEz
|
||||||
|
'com.perol.play.pixez', // PixEz Google Play版
|
||||||
|
'com.magicalstory.videos', // 奇妙影视
|
||||||
|
'com.magicalstory.installer', // 奇妙安装程序
|
||||||
|
'com.guozhigq.pilipala', // PiliPala
|
||||||
|
'com.salt.music', // Salt Player
|
||||||
|
'com.xuncorp.qinalt.music', // 青盐云听
|
||||||
|
'com.github.wgh136.pica_comic', // Pica Comic
|
||||||
|
'com.yenaly.han1meviewer', // Han1meViewer
|
||||||
|
'ru.zdevs.zarchiver', // ZArchiver
|
||||||
|
'ru.zdevs.zarchiver.pro', // ZArchiver Pro
|
||||||
|
'me.zhanghai.android.files', // 质感文件
|
||||||
|
'com.xjcheng.musictageditor', // 音乐标签
|
||||||
|
'com.lalilu.lmusic', // LMusic
|
||||||
|
'com.ktls.fileinfo', // 存储空间清理
|
||||||
|
'idm.internet.download.manager', // 1DM
|
||||||
|
'idm.internet.download.manager.plus', // 1DM+
|
||||||
|
'com.mxtech.videoplayer', // MX播放器
|
||||||
|
'com.mxtech.videoplayer.pro', // MX播放器专业版
|
||||||
|
'com.github.kr328.clash', // Clash for Android
|
||||||
|
'com.x8bit.bitwarden', // Bitwarden
|
||||||
|
'org.localsend.localsend_app', // LocalSend
|
||||||
|
'moe.shizuku.privileged.api', // Shizuku
|
||||||
|
'com.ktls.automation', // 自动点击工具
|
||||||
|
'com.deepl.mobiletranslator', // DeepL
|
||||||
|
'com.accessibilitymanager', // 无障碍管理器
|
||||||
|
'me.tasy5kg.cutegif', // 小萌GIF
|
||||||
|
'com.absinthe.libchecker', // LibChecker
|
||||||
|
'com.github.metacubex.clash.meta', // Clash Meta for Android
|
||||||
|
'io.github.jd1378.otphelper', // 短信验证码自动复制
|
||||||
|
'com.valvesoftware.android.steam.community', // Steam
|
||||||
|
'io.legado.app.release', // 阅读
|
||||||
|
'com.getsurfboard', // Surfboard
|
||||||
|
'moe.nb4a', // NekoBox
|
||||||
|
'com.v2ray.ang', // v2rayNG
|
||||||
|
'com.xiaoyv.bangumi', // Bangumi for Android
|
||||||
|
'com.funny.translation', // 译站
|
||||||
|
'com.looker.droidify', // Droid-ify
|
||||||
|
'app.eleven.com.fastfiletransfer', // 文件闪传
|
||||||
|
'com.idaodan.clean.master', // 雪豹速清
|
||||||
|
'com.samsung.agc.gcam84', // 相机
|
||||||
|
'com.wsw.cospa', // 异次元
|
||||||
|
'app.mihon', // Mihon
|
||||||
|
'com.rosan.installer.x', // installerX
|
||||||
|
'app.rikka.savecopy', // 保存副本
|
||||||
|
|
||||||
|
// 系统自带非系统应用
|
||||||
|
// 小米
|
||||||
|
'com.miui.huanji', // 小米换机
|
||||||
|
'com.miui.weather2', // 天气
|
||||||
|
'com.miui.calculator', // 计算器
|
||||||
|
'com.android.soundrecorder', // 录音机
|
||||||
|
'com.android.email', // 电子邮件
|
||||||
|
'com.miui.screenrecorder', // 屏幕录制
|
||||||
|
'com.android.deskclock', // 时钟 https://github.com/gkd-kit/gkd/issues/560
|
||||||
|
'com.miui.newmidrive', // 小米云盘
|
||||||
|
'cn.wps.moffice_eng.xiaomi.lite', // 小米文档查看器
|
||||||
|
'com.miui.mediaeditor', // 小米相册-编辑
|
||||||
|
'com.miui.notes', // 笔记
|
||||||
|
'com.miui.cleanmaster', // 垃圾清理
|
||||||
|
'com.miui.compass', // 指南针
|
||||||
|
'com.duokan.phone.remotecontroller', // 万能遥控
|
||||||
|
'com.mfashiongallery.emag', // 小米画报
|
||||||
|
|
||||||
|
// https://github.com/gkd-kit/gkd/issues/451
|
||||||
|
'mark.via', // via浏览器
|
||||||
|
'mark.via.gp', // via浏览器Google Play版
|
||||||
|
'com.mmbox.xbrowser', // X浏览器
|
||||||
|
'com.mmbox.xbrowser.pro', // X浏览器Google Play版
|
||||||
|
'com.mycompany.app.soulbrowser', // soul浏览器
|
||||||
|
];
|
||||||
|
|
||||||
|
// 如果应用规则已有全局规则中的某一类的规则, 则在对应全局规则禁用此应用
|
||||||
|
function filterAppsByGroup(apps: any[], groupNamePrefix: string): string[] {
|
||||||
|
return apps
|
||||||
|
.filter(
|
||||||
|
(a) =>
|
||||||
|
a.groups.filter((g: { name: string }) =>
|
||||||
|
g.name.startsWith(groupNamePrefix),
|
||||||
|
).length > 0,
|
||||||
|
)
|
||||||
|
.map((a) => a.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置单独禁用
|
||||||
|
export const openAdBlackListAppIDs = new Set([
|
||||||
|
...blackListAppIDs,
|
||||||
|
'com.taptap', // TapTap
|
||||||
|
...filterAppsByGroup(apps, '开屏广告'),
|
||||||
|
]);
|
||||||
|
export const updateBlackListAppIDs = new Set([
|
||||||
|
...blackListAppIDs,
|
||||||
|
...filterAppsByGroup(apps, '更新提示'),
|
||||||
|
]);
|
||||||
|
export const yongBlackListAppIDs = new Set([
|
||||||
|
...blackListAppIDs,
|
||||||
|
'xxx.pornhub.fuck', // JavDB
|
||||||
|
...filterAppsByGroup(apps, '青少年模式'),
|
||||||
|
]);
|
||||||
|
|
||||||
|
// 系统软件全局启用
|
||||||
|
export const whiteListAppIDs: string[] = [
|
||||||
|
// 在一些系统软件中启用
|
||||||
|
];
|
||||||
|
|
||||||
|
// 设置系统软件单独启用
|
||||||
|
export const openAdWhiteListAppIDs = new Set([
|
||||||
|
...whiteListAppIDs,
|
||||||
|
'com.bbk.theme', // i 主题
|
||||||
|
'com.sec.android.app.samsungapps', // 三星应用商店
|
||||||
|
'com.bbk.appstore', // vivo应用商店
|
||||||
|
'com.miui.systemAdSolution', // 小米智能服务
|
||||||
|
]);
|
||||||
|
export const updateWhiteListAppIDs = new Set([...whiteListAppIDs]);
|
||||||
|
export const yongWhiteListAppIDs = new Set([...whiteListAppIDs]);
|
||||||
@@ -1,122 +1,6 @@
|
|||||||
import apps from './rawApps';
|
|
||||||
import { RawGlobalGroup } from '@gkd-kit/api';
|
import { RawGlobalGroup } from '@gkd-kit/api';
|
||||||
import * as utils from './utils';
|
import * as utils from './utils';
|
||||||
|
import * as appList from './globalDefaultApps';
|
||||||
// 全局禁用
|
|
||||||
const diabledAppIds: string[] = [
|
|
||||||
// 在一些非系统应用中禁用
|
|
||||||
'com.tencent.mm', // 微信
|
|
||||||
'li.songe.gkd', // GKD
|
|
||||||
'com.eg.android.AlipayGphone', //支付宝
|
|
||||||
'com.tencent.wetype', // 微信输入法
|
|
||||||
'com.miui.huanji', // 小米换机
|
|
||||||
'com.miui.weather2', // 小米天气
|
|
||||||
'com.miui.calculator', // 小米计算器
|
|
||||||
'com.android.soundrecorder', // 小米录音机
|
|
||||||
'com.android.email', // 小米电子邮件
|
|
||||||
'com.miui.screenrecorder', // 小米屏幕录制
|
|
||||||
'com.tmri.app.main', // 交管12123
|
|
||||||
'com.github.android', // GitHub
|
|
||||||
'org.telegram.messenger', // Telegram
|
|
||||||
'com.twitter.android', // X(推特)
|
|
||||||
'com.aistra.hail', // 雹
|
|
||||||
'com.heyanle.easybangumi4', // 纯纯看番
|
|
||||||
'com.perol.pixez', // PixEz
|
|
||||||
'com.perol.play.pixez', // PixEz Google Play版
|
|
||||||
'com.magicalstory.videos', // 奇妙影视
|
|
||||||
'com.guozhigq.pilipala', // PiliPala
|
|
||||||
'com.salt.music', // Salt Player
|
|
||||||
'com.xuncorp.qinalt.music', // 青盐云听
|
|
||||||
'com.github.wgh136.pica_comic', // Pica Comic
|
|
||||||
'com.yenaly.han1meviewer', // Han1meViewer
|
|
||||||
'ru.zdevs.zarchiver', // ZArchiver
|
|
||||||
'ru.zdevs.zarchiver.pro', // ZArchiver Pro
|
|
||||||
'me.zhanghai.android.files', // 质感文件
|
|
||||||
'com.xjcheng.musictageditor', // 音乐标签
|
|
||||||
'com.lalilu.lmusic', // LMusic
|
|
||||||
'com.ktls.fileinfo', // 存储空间清理
|
|
||||||
'idm.internet.download.manager', // 1DM
|
|
||||||
'idm.internet.download.manager.plus', // 1DM+
|
|
||||||
'com.mxtech.videoplayer', // MX播放器
|
|
||||||
'com.mxtech.videoplayer.pro', // MX播放器专业版
|
|
||||||
'com.github.kr328.clash', // Clash for Android
|
|
||||||
'com.x8bit.bitwarden', // Bitwarden
|
|
||||||
'org.localsend.localsend_app', // LocalSend
|
|
||||||
'moe.shizuku.privileged.api', // Shizuku
|
|
||||||
'com.ktls.automation', // 自动点击工具
|
|
||||||
'com.deepl.mobiletranslator', // DeepL
|
|
||||||
'com.accessibilitymanager', // 无障碍管理器
|
|
||||||
'me.tasy5kg.cutegif', // 小萌GIF
|
|
||||||
'com.absinthe.libchecker', // LibChecker
|
|
||||||
'com.github.metacubex.clash.meta', // Clash Meta for Android
|
|
||||||
'io.github.jd1378.otphelper', // 短信验证码自动复制
|
|
||||||
'com.valvesoftware.android.steam.community', // Steam
|
|
||||||
'io.legado.app.release', // 阅读
|
|
||||||
'com.getsurfboard', // Surfboard
|
|
||||||
'moe.nb4a', // NekoBox
|
|
||||||
'com.v2ray.ang', // v2rayNG
|
|
||||||
'com.xiaoyv.bangumi', // Bangumi for Android
|
|
||||||
'com.funny.translation', // 译站
|
|
||||||
'com.looker.droidify', // Droid-ify
|
|
||||||
'app.eleven.com.fastfiletransfer', // 文件闪传
|
|
||||||
'com.idaodan.clean.master', // 雪豹速清
|
|
||||||
'com.samsung.agc.gcam84', // 相机
|
|
||||||
'com.wsw.cospa', // 异次元
|
|
||||||
'app.mihon', // Mihon
|
|
||||||
|
|
||||||
// https://github.com/gkd-kit/gkd/issues/451
|
|
||||||
'mark.via', // via浏览器
|
|
||||||
'mark.via.gp', // via浏览器Google Play版
|
|
||||||
'com.mmbox.xbrowser', // X浏览器
|
|
||||||
'com.mmbox.xbrowser.pro', // X浏览器Google Play版
|
|
||||||
'com.mycompany.app.soulbrowser', // soul浏览器
|
|
||||||
|
|
||||||
// https://github.com/gkd-kit/gkd/issues/560
|
|
||||||
'com.android.deskclock', // 时钟
|
|
||||||
];
|
|
||||||
|
|
||||||
// 如果应用规则已有全局规则中的某一类的规则, 则在对应全局规则禁用此应用
|
|
||||||
function filterAppsByGroup(apps: any[], groupNamePrefix: string): string[] {
|
|
||||||
return apps
|
|
||||||
.filter(
|
|
||||||
(a) =>
|
|
||||||
a.groups.filter((g: { name: string }) =>
|
|
||||||
g.name.startsWith(groupNamePrefix),
|
|
||||||
).length > 0,
|
|
||||||
)
|
|
||||||
.map((a) => a.id);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 设置单独禁用
|
|
||||||
const diabledAppIdsAD = new Set([
|
|
||||||
...diabledAppIds,
|
|
||||||
'com.taptap', // TapTap
|
|
||||||
...filterAppsByGroup(apps, '开屏广告'),
|
|
||||||
]);
|
|
||||||
const diabledAppIdsUP = new Set([
|
|
||||||
...diabledAppIds,
|
|
||||||
...filterAppsByGroup(apps, '更新提示'),
|
|
||||||
]);
|
|
||||||
const diabledAppIdsYM = new Set([
|
|
||||||
...diabledAppIds,
|
|
||||||
'xxx.pornhub.fuck', // JavDB
|
|
||||||
...filterAppsByGroup(apps, '青少年模式'),
|
|
||||||
]);
|
|
||||||
|
|
||||||
// 系统软件全局启用
|
|
||||||
const enabledAppIds: string[] = [
|
|
||||||
// 在一些系统软件中启用
|
|
||||||
];
|
|
||||||
|
|
||||||
// 设置系统软件单独启用
|
|
||||||
const enabledAppIdsAD = new Set([
|
|
||||||
...enabledAppIds,
|
|
||||||
'com.bbk.theme', // i 主题
|
|
||||||
'com.sec.android.app.samsungapps', // 三星应用商店
|
|
||||||
'com.bbk.appstore', // vivo应用商店
|
|
||||||
]);
|
|
||||||
const enabledAppIdsUP = new Set([...enabledAppIds]);
|
|
||||||
const enabledAppIdsYM = new Set([...enabledAppIds]);
|
|
||||||
|
|
||||||
const globalGroups: RawGlobalGroup[] = [
|
const globalGroups: RawGlobalGroup[] = [
|
||||||
{
|
{
|
||||||
@@ -140,9 +24,11 @@ const globalGroups: RawGlobalGroup[] = [
|
|||||||
'[childCount=0][visibleToUser=true][(text.length<10 && (text*="跳过" || text*="跳過" || text*="skip" || text*="Skip")) || id$="tt_splash_skip_btn" || vid*="skip" || vid*="Skip" || desc*="跳过" || desc*="skip" || (vid*="count" && vid*="down" && vid!*="countdown" && vid!*="load" && vid!*="add" && vid!*="ead" && vid!*="time")]',
|
'[childCount=0][visibleToUser=true][(text.length<10 && (text*="跳过" || text*="跳過" || text*="skip" || text*="Skip")) || id$="tt_splash_skip_btn" || vid*="skip" || vid*="Skip" || desc*="跳过" || desc*="skip" || (vid*="count" && vid*="down" && vid!*="countdown" && vid!*="load" && vid!*="add" && vid!*="ead" && vid!*="time")]',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
apps: [...diabledAppIdsAD]
|
apps: [...appList.openAdBlackListAppIDs]
|
||||||
.map((id) => ({ id, enable: false }))
|
.map((id) => ({ id, enable: false }))
|
||||||
.concat([...enabledAppIdsAD].map((id) => ({ id, enable: true }))),
|
.concat(
|
||||||
|
[...appList.openAdWhiteListAppIDs].map((id) => ({ id, enable: true })),
|
||||||
|
),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
key: 1,
|
key: 1,
|
||||||
@@ -163,9 +49,11 @@ const globalGroups: RawGlobalGroup[] = [
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
apps: [...diabledAppIdsUP]
|
apps: [...appList.updateBlackListAppIDs]
|
||||||
.map((id) => ({ id, enable: false }))
|
.map((id) => ({ id, enable: false }))
|
||||||
.concat([...enabledAppIdsUP].map((id) => ({ id, enable: true }))),
|
.concat(
|
||||||
|
[...appList.updateWhiteListAppIDs].map((id) => ({ id, enable: true })),
|
||||||
|
),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
key: 2,
|
key: 2,
|
||||||
@@ -183,9 +71,11 @@ const globalGroups: RawGlobalGroup[] = [
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
apps: [...diabledAppIdsYM]
|
apps: [...appList.yongBlackListAppIDs]
|
||||||
.map((id) => ({ id, enable: false }))
|
.map((id) => ({ id, enable: false }))
|
||||||
.concat([...enabledAppIdsYM].map((id) => ({ id, enable: true }))),
|
.concat(
|
||||||
|
[...appList.yongWhiteListAppIDs].map((id) => ({ id, enable: true })),
|
||||||
|
),
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
export default globalGroups;
|
export default globalGroups;
|
||||||
|
|||||||
Reference in New Issue
Block a user