Skip to content

Commit f3ef87a

Browse files
committed
🍉冰社v2.0.1
1 parent ac3f9f7 commit f3ef87a

16 files changed

+194
-84
lines changed

README.md

+2
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,8 @@
6969
| vmos pro | 🟢 | 去登录 | 3.0.7 |
7070
| 番茄小说 | 🟢 | 去除广告 | 6.4.5.32 |
7171
| 小熊录屏 | 🟢 | 可以使用vip功能 | 2.4.4 |
72+
| 不背单词 | 🟢 | 终生大会员 | 8.0 |
73+
| Autocmd | 🟢 | 解锁专业版 | 1.1.9 |
7274
| 一木记账 | 🟢 | `vip`功能解锁 | 5.8.9 |
7375
| nfc tool | 🟢 | 可以使用vip功能 | 2.6.5 |
7476
| 滴答清单 | 🟢 | `vip`破解 | 7.3.1.0 |

app/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ android {
1212
applicationId "me.bingyue.IceCore"
1313
minSdkVersion 27
1414
targetSdkVersion 33
15-
versionCode 2
16-
versionName "2.0.0"
15+
versionCode 3
16+
versionName "2.0.1"
1717
// ndk {
1818
// abiFilters "x86_64","x86","armeabi-v7a","arm64-v8a"
1919
// }

app/release/app-release.apk

728 Bytes
Binary file not shown.

app/release/output-metadata.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
"type": "SINGLE",
1212
"filters": [],
1313
"attributes": [],
14-
"versionCode": 2,
15-
"versionName": "2.0.0",
14+
"versionCode": 3,
15+
"versionName": "2.0.1",
1616
"outputFile": "app-release.apk"
1717
}
1818
],

app/src/main/java/me/bingyue/IceCore/MainHook.java

+3-18
Original file line numberDiff line numberDiff line change
@@ -16,23 +16,6 @@
1616

1717
public class MainHook implements IXposedHookLoadPackage {
1818

19-
public static final String[] app_PackName = {
20-
"com.when.coco",
21-
"me.mapleaf.calendar",
22-
"com.clover.daysmatter",
23-
"web1n.stopapp",
24-
"com.lerist.fakelocation",
25-
"com.dragon.read",
26-
"com.duitang.main",
27-
"com.duapps.recorder",
28-
"com.wangc.bill",
29-
"cn.ticktick.task",
30-
"com.geektoy.nfctool",
31-
"com.mutangtech.qianji",
32-
"com.nowcasting.activity",
33-
"com.vmos.pro",
34-
"com.estrongs.android.pop"
35-
};
3619

3720
private static final Map<String, String> hook_method_app;
3821

@@ -53,6 +36,8 @@ public class MainHook implements IXposedHookLoadPackage {
5336
hook_method_app.put("com.nowcasting.activity", "w");
5437
hook_method_app.put("com.vmos.pro", "y");
5538
hook_method_app.put("com.estrongs.android.pop", "a1");
39+
hook_method_app.put("cn.com.langeasy.LangEasyLexis", "a2");
40+
hook_method_app.put("com.lerist.autocmd", "b2");
5641
}
5742

5843
@Override
@@ -83,7 +68,7 @@ public void handleLoadPackage(XC_LoadPackage.LoadPackageParam lpparam) throws Th
8368
}
8469

8570
public boolean check_app_package_name(String name){
86-
for (String s : app_PackName) {
71+
for (String s : hook_method_app.keySet()) {
8772
if (name.equals(s)) {
8873
return true;
8974
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
package me.bingyue.IceCore.activity
2+
3+
class Config {
4+
val settingsMap = mapOf(
5+
"Fake Location" to listOf(
6+
listOf("启用本地VIP", "com_lerist_fakelocation__vip", "仅本地生效"),
7+
listOf("去除APP黑名单", "com_lerist_fakelocation__black_app", "如上所述"),
8+
listOf("去除服务器验证", "com_lerist_fakelocation__verify", "防止定位突然关闭")
9+
),
10+
"Autocmd+" to listOf(
11+
listOf("启用本地VIP", "com_lerist_autocmd__vip", "仅本地生效"),
12+
),
13+
"彩云天气" to listOf(
14+
listOf("启用本地VIP", "com_nowcasting_activity__isvip", "仅本地生效")
15+
),
16+
"滴滴清单" to listOf(
17+
listOf("启用本地VIP", "cn_ticktick_task__isvip", "仅本地生效")
18+
),
19+
"倒数日" to listOf(
20+
listOf("破解内购", "com_clover_daysmatter__pay", "开启之后直接去购买会员,别付款直接返回")
21+
),
22+
"ES文件管理器" to listOf(
23+
listOf("启用本地VIP", "com_estrongs_android_pop__isvip", "仅本地生效")
24+
),
25+
"NFC Tool" to listOf(
26+
listOf("启用本地VIP", "com_geektoy_nfctool__isvip", "仅本地生效")
27+
),
28+
"一木记帐" to listOf(
29+
listOf("启用本地VIP", "com_wangc_bill__isvip", "仅本地生效")
30+
),
31+
"365日历" to listOf(
32+
listOf("启用本地VIP", "com_when_coco__isvip", "仅本地生效")
33+
),
34+
"堆糖" to listOf(
35+
listOf("启用本地VIP", "com_duitang_main__isvip", "仅本地生效")
36+
),
37+
"番茄小说" to listOf(
38+
listOf("启用去广告", "com_dragon_read__isvip", "仅去广告")
39+
),
40+
"一叶日历" to listOf(
41+
listOf("启用本地VIP", "me_mapleaf_calendar__isvip", "仅本地生效")
42+
),
43+
"钱迹" to listOf(
44+
listOf("启用本地VIP", "com_mutangtech_qianji__isvip", "仅本地生效")
45+
),
46+
"小熊录屏" to listOf(
47+
listOf("启用本地VIP", "com_duapps_recorder__isvip", "仅本地生效")
48+
),
49+
"小黑屋" to listOf(
50+
listOf("启用激活码破解", "web1n_stopapp__vip", "开启后去激活码随便输入一个支付宝订单号即可")
51+
),
52+
"不背单词" to listOf(
53+
listOf("启用本地VIP", "cn_com_langeasy_LangEasyLexis__isvip", "仅本地生效")
54+
)
55+
)
56+
}

app/src/main/java/me/bingyue/IceCore/activity/MainActivity.kt

+6-2
Original file line numberDiff line numberDiff line change
@@ -164,8 +164,12 @@ fun Module_Setting(screenHeight : Dp, screenWidth: Dp, b: List<Float>) {
164164
shape = RoundedCornerShape(55.dp) // 保持圆角比例
165165
)
166166
.clickable {
167-
val intent = Intent(context, ModuleActivity::class.java)
168-
context.startActivity(intent)
167+
if(!isModuleActivated()){
168+
Toast.makeText(context, "请先前往lsposed激活模块,再进入模块设置", Toast.LENGTH_SHORT).show()
169+
}else{
170+
val intent = Intent(context, ModuleActivity::class.java)
171+
context.startActivity(intent)
172+
}
169173
}
170174
)
171175
Text(

app/src/main/java/me/bingyue/IceCore/activity/ModuleActivity.kt

+8-45
Original file line numberDiff line numberDiff line change
@@ -72,52 +72,15 @@ fun ModuleSettingsScreen() {
7272
modifier = Modifier.padding(bottom = 16.dp)
7373
)
7474

75-
// 小标题 + 分界线
76-
SectionTitle("Fake Location")
7775

78-
// 文本 + 切换键
79-
SettingItemWithSwitch("启用本地VIP", "仅本地生效","com_lerist_fakelocation__vip")
80-
SettingItemWithSwitch("去除APP黑名单", "如上所述", "com_lerist_fakelocation__black_app")
81-
SettingItemWithSwitch("去除服务器验证", "防止定位突然关闭", "com_lerist_fakelocation__verify")
82-
83-
SectionTitle("彩云天气")
84-
SettingItemWithSwitch("启用本地VIP", "仅本地生效","com_nowcasting_activity__isvip")
85-
86-
SectionTitle("滴滴清单")
87-
SettingItemWithSwitch("启用本地VIP", "仅本地生效","cn_ticktick_task__isvip")
88-
89-
SectionTitle("倒数日")
90-
SettingItemWithSwitch("破解内购", "开启之后直接去购买会员,别付款直接返回","com_clover_daysmatter__pay")
91-
92-
SectionTitle("ES文件管理器")
93-
SettingItemWithSwitch("启用本地VIP", "仅本地生效","com_estrongs_android_pop__isvip")
94-
95-
SectionTitle("nfc tool")
96-
SettingItemWithSwitch("启用本地VIP", "仅本地生效","com_geektoy_nfctool__isvip")
97-
98-
SectionTitle("一木记帐")
99-
SettingItemWithSwitch("启用本地VIP", "仅本地生效","com_wangc_bill__isvip")
100-
101-
SectionTitle("365日历")
102-
SettingItemWithSwitch("启用本地VIP", "仅本地生效","com_when_coco__isvip")
103-
104-
SectionTitle("堆糖")
105-
SettingItemWithSwitch("启用本地VIP", "仅本地生效","com_duitang_main__isvip")
106-
107-
SectionTitle("番茄小说")
108-
SettingItemWithSwitch("启用去广告", "仅去广告","com_dragon_read__isvip")
109-
110-
SectionTitle("一叶日历")
111-
SettingItemWithSwitch("启用本地VIP", "仅本地生效","me_mapleaf_calendar__isvip")
112-
113-
SectionTitle("钱迹")
114-
SettingItemWithSwitch("启用本地VIP", "仅本地生效","com_mutangtech_qianji__isvip")
115-
116-
SectionTitle("小熊录屏")
117-
SettingItemWithSwitch("启用本地VIP", "仅本地生效","com_duapps_recorder__isvip")
118-
119-
SectionTitle("小黑屋")
120-
SettingItemWithSwitch("启用激活码破解", "开启后去激活码随便输入一个支付宝订单号即可","web1n_stopapp__vip",)
76+
// 使用 for 循环遍历 Map
77+
Config().settingsMap.forEach { (sectionTitle, settings) ->
78+
SectionTitle(title = sectionTitle);
79+
settings.forEach { setting ->
80+
val (name, id, description) = setting
81+
SettingItemWithSwitch(label = name, description = description, id = id)
82+
}
83+
}
12184
}
12285
}
12386

app/src/main/java/me/bingyue/IceCore/config/Config.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@ public class Config {
1010
public static boolean com_estrongs_android_pop__isvip = true;
1111
public static boolean com_geektoy_nfctool__isvip = true;
1212
public static boolean com_wangc_bill__isvip = true;
13-
13+
14+
public static boolean com_lerist_autocmd__vip = true;
15+
public static boolean cn_com_langeasy_LangEasyLexis__isvip = true;
1416
public static boolean com_when_coco__isvip = true;
1517
public static boolean com_duitang_main__isvip = true;
1618
public static boolean com_dragon_read__isvip = true;

app/src/main/java/me/bingyue/IceCore/config/Load_Config.java

-7
Original file line numberDiff line numberDiff line change
@@ -39,13 +39,6 @@ public static void loading() throws IOException, ClassNotFoundException, Illegal
3939
for (Field field: fields){
4040
insertData(field.getName(), Boolean.compare(field.getBoolean(null), false));
4141
}
42-
}else{
43-
for (Field field : fields) {
44-
if (field.getType() == boolean.class && java.lang.reflect.Modifier.isStatic(field.getModifiers())) {
45-
field.setAccessible(true);
46-
field.set(null, queryDataByName(field.getName()));
47-
}
48-
}
4942
}
5043
}
5144

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package me.bingyue.IceCore.hook_app;
2+
3+
4+
import android.app.Application;
5+
import android.content.Context;
6+
7+
import de.robv.android.xposed.XC_MethodHook;
8+
import de.robv.android.xposed.XposedHelpers;
9+
import de.robv.android.xposed.callbacks.XC_LoadPackage;
10+
import me.bingyue.IceCore.config.Config;
11+
12+
public class cn_com_langeasy_LangEasyLexis {
13+
public static void hook_init(XC_LoadPackage.LoadPackageParam lpparam){
14+
if(Config.cn_com_langeasy_LangEasyLexis__isvip) {
15+
hook_vip(lpparam);
16+
}
17+
}
18+
19+
public static void hook_vip(XC_LoadPackage.LoadPackageParam lpparam){
20+
XposedHelpers.findAndHookMethod(Application.class, "attach", Context.class, new XC_MethodHook() {
21+
@Override
22+
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
23+
Context context = (Context) param.args[0];
24+
ClassLoader classLoader = context.getClassLoader();
25+
XposedHelpers.findAndHookMethod("cn.com.langeasy.LangEasyLexis.sharepreference.UserInfoBean", classLoader, "isVip", new XC_MethodHook() {
26+
@Override
27+
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
28+
super.afterHookedMethod(param);
29+
param.setResult(true);
30+
}
31+
});
32+
XposedHelpers.findAndHookMethod("cn.com.langeasy.LangEasyLexis.bean.Privileges$Privilege", classLoader, "isGranted", new XC_MethodHook() {
33+
@Override
34+
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
35+
super.afterHookedMethod(param);
36+
param.setResult(true);
37+
}
38+
});
39+
}
40+
});
41+
}
42+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package me.bingyue.IceCore.hook_app;
2+
3+
import android.app.Application;
4+
import android.content.Context;
5+
6+
import de.robv.android.xposed.XC_MethodHook;
7+
import de.robv.android.xposed.XposedHelpers;
8+
import de.robv.android.xposed.callbacks.XC_LoadPackage;
9+
import me.bingyue.IceCore.config.Config;
10+
11+
public class com_lerist_autocmd {
12+
public static void hook_init(XC_LoadPackage.LoadPackageParam lpparam){
13+
if(Config.com_lerist_autocmd__vip){
14+
hook_vip(lpparam);
15+
}
16+
}
17+
18+
public static void hook_vip(XC_LoadPackage.LoadPackageParam lpparam){
19+
XposedHelpers.findAndHookMethod(Application.class, "attach", Context.class, new XC_MethodHook() {
20+
@Override
21+
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
22+
Context context = (Context) param.args[0];
23+
ClassLoader classLoader = context.getClassLoader();
24+
XposedHelpers.findAndHookMethod("\u0793.\u016C\u06DB", classLoader, "\u0D87", new XC_MethodHook() {
25+
@Override
26+
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
27+
super.afterHookedMethod(param);
28+
param.setResult(true);
29+
}
30+
});
31+
}
32+
});
33+
}
34+
}

app/src/main/java/me/bingyue/IceCore/hook_app/fake_location_vip.java

+20-1
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,29 @@ protected void afterHookedMethod(MethodHookParam param) throws Throwable {
2929
hook_vip(finalClassLoader.loadClass("\u0D5F.\u0588"));
3030
hook_black_app(finalClassLoader.loadClass("\u0D5F.\u052C"));
3131
hook_black_app_se(finalClassLoader.loadClass("\u0CF2.\u0528"));
32+
hook_verify(finalClassLoader.loadClass("\u0828.\u052C"));
3233
}
3334
}
3435
);
3536
}
37+
38+
public static void hook_verify(Class init){
39+
if (!Config.com_lerist_fakelocation__verify){
40+
return;
41+
}
42+
XposedHelpers.findAndHookMethod(init, "\u052C", new XC_MethodHook() {
43+
@Override
44+
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
45+
super.beforeHookedMethod(param);
46+
}
47+
48+
@Override
49+
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
50+
super.afterHookedMethod(param);
51+
param.setResult(true);
52+
}
53+
});
54+
}
3655
public static void hook_vip(Class initActivityClazz){
3756
if(!Config.com_lerist_fakelocation__vip){
3857
return;
@@ -76,7 +95,7 @@ public static void hook_black_app_se(Class init){
7695
return;
7796
}
7897
XposedHelpers.findAndHookMethod(init
79-
, "\u0529", new XC_MethodHook() {
98+
, "\u052C", new XC_MethodHook() {
8099
@Override
81100
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
82101
super.beforeHookedMethod(param);

app/src/main/java/me/bingyue/IceCore/hook_app/qianji_vip.java

+8-6
Original file line numberDiff line numberDiff line change
@@ -32,17 +32,19 @@ protected void afterHookedMethod(MethodHookParam param) throws Throwable {
3232

3333
public static void hook_account_check_vip(XC_LoadPackage.LoadPackageParam lpparam){
3434
XposedHelpers.findAndHookMethod(
35-
"s6.b",
35+
"t6.a",
3636
lpparam.classLoader,
37-
"c",
37+
"getEm",
3838
new XC_MethodHook() {
3939
@Override
4040
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
4141
super.beforeHookedMethod(param);
42-
int a = (int) param.args[0];
43-
if(a == 8888){
44-
param.args[1] = "{\"msg\":\"\"}";
45-
}
42+
}
43+
44+
@Override
45+
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
46+
super.afterHookedMethod(param);
47+
param.setResult("{\"msg\":\"\"}");
4648
}
4749
}
4850
);

app/src/main/java/me/bingyue/IceCore/hook_core.java

+6
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@
1616
import me.bingyue.IceCore.hook_app.caiyun_weather;
1717
import me.bingyue.IceCore.hook_app.vmos_pro;
1818
import me.bingyue.IceCore.hook_app.com_estrongs_android_pop;
19+
import me.bingyue.IceCore.hook_app.cn_com_langeasy_LangEasyLexis;
20+
import me.bingyue.IceCore.hook_app.com_lerist_autocmd;
1921

2022

2123
public class hook_core{
@@ -54,4 +56,8 @@ public void g(XC_LoadPackage.LoadPackageParam lpparam){
5456
public void y(XC_LoadPackage.LoadPackageParam lpparam) {vmos_pro.hook_init(lpparam);}
5557

5658
public void a1(XC_LoadPackage.LoadPackageParam lpparam) {com_estrongs_android_pop.hook_init(lpparam);}
59+
60+
public void a2(XC_LoadPackage.LoadPackageParam lpparam) {cn_com_langeasy_LangEasyLexis.hook_init(lpparam);}
61+
62+
public void b2(XC_LoadPackage.LoadPackageParam lpparam) {com_lerist_autocmd.hook_init(lpparam);}
5763
}

0 commit comments

Comments
 (0)