高中生

- 金币
- 391
- 好评
- 5
- 信誉
- 100
|
本帖最后由 SoloSu 于 2026-7-20 23:22 编辑
应用信息
| 项目 | 内容 | | 应用名称 | 囧次元 | | 包名 | com.tingfeng.tool | | 版本 | 1.5.8.0 (versionCode: 84) | | 类型 | Flutter 应用 |
1. 签名校验去除
修改方式
MT 管理器去除签名效验 (KillerApplication37)
- GApplication → KillerApplication37 → Application
复制代码 SO 层分析结果
| SO 文件 | 大小 | 分析结果 | | libloader.so | 6.2MB | Flutter 引擎,含 JNI 函数,无签名校验 | | libapp.so | 12.3MB | Flutter Dart 快照,无签名相关代码 | | libcore.so | 6.7MB | 含 OpenSSL,无应用签名校验 | | libdevInfo.so | 280KB | 设备信息库,无签名校验 |
结论:SO 层未发现额外签名校验,Java 层已有 KillerApplication37 覆盖
2. 广告 SDK 清理
2.1 AndroidManifest.xml 清理
从 AndroidManifest.xml 中删除了 8 个广告 SDK 的约 150 个组件声明:
| 广告 SDK | 删除组件数 | 详细 | | Windmill | 5 | SpecialActivity + 4 个插屏广告 Activity | | Sigmob | 7 | SigmobFileProvider + 6 个广告 Activity | | BeiZi (倍孜) | 5 | AdActivity, Interstitial, Download, DownloadService | | 百度广告 | 5 | BdFileProvider, AppActivity, RewardVideo, MobCPUDrama, BdShellActivity | | 穿山甲 (Pangle) | ~60 | 7 个 StubActivity, 2 个 StubServer, TTMultiProvider, 4 个下载 Activity, 1 个 Receiver, 9 个服务, ZEUS 插件, 24 个直播 Activity, 权限 | | 广点通 (GDT) | 7 | DownloadService + 6 个广告 Activity | | 快手 (KS) | 44 | 37 个 Activity, 4 个 Service, AdSdkFileProvider, 权限 | | 美数 (Meishu) | 10 | 8 个 Activity, 2 个 Provider | | 其他广告 | 5 | FlutterMailerFileProvider, AD_ID/msa/SupplementaryDID 权限, 华为广告标识 |
3. Dex 修改
修改文件
classes2.dex → com.windmill.windmill_ad_plugin.WindmillAdPluginDelegate
修改方法
onMethodCall(Lio/flutter/plugin/common/MethodCall;Lio/flutter/plugin/common/MethodChannel$Result;)V
修改说明
这是 Flutter 广告聚合插件(Windmill)的核心入口方法。Dart 端通过 Flutter MethodChannel 调用此方法,完成广告 SDK 初始化、广告加载、展示等所有操作。将此方法改为空操作后,所有广告操作被静默阻断。
修改前代码(原始)
- .method public onMethodCall(Lio/flutter/plugin/common/MethodCall;Lio/flutter/plugin/common/MethodChannel$Result;)V
- .registers 23
- .param p1 # Lio/flutter/plugin/common/MethodCall;
- .annotation build Landroidx/annotation/NonNull;
- .end annotation
- .end param
- .param p2 # Lio/flutter/plugin/common/MethodChannel$Result;
- .annotation build Landroidx/annotation/NonNull;
- .end annotation
- .end param
- move-object/from16 v15, p0
- move-object/from16 v0, p1
- const-string v1, "latitude"
- const-string v2, "longitude"
- iget-object v3, v0, Lio/flutter/plugin/common/MethodCall;->method:Ljava/lang/String;
- const-string v4, "setPresetLocalStrategyPath"
- invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
- move-result v3
- if-eqz v3, :cond_18
- invoke-direct/range {p0 .. p2}, Lcom/windmill/windmill_ad_plugin/WindmillAdPluginDelegate;->setPresetLocalStrategyPath(Lio/flutter/plugin/common/MethodCall;Lio/flutter/plugin/common/MethodChannel$Result;)V
- goto/16 :goto_3c2
- :cond_18
- iget-object v3, v0, Lio/flutter/plugin/common/MethodCall;->method:Ljava/lang/String;
- const-string v4, "networkPreInit"
- ...
- ; 共 484 条指令,处理 30+ 种广告方法:
- ; setPresetLocalStrategyPath - 设置本地策略路径
- ; networkPreInit - 广告网络预初始化
- ; setupSdkWithAppId - 初始化广告 SDK
- ; getSdkVersion - 获取 SDK 版本
- ; setUserId - 设置用户 ID
- ; setAdultStatus - 设置成人状态
- ; requestPermission - 请求权限
- ; setPersonalizedStatus - 设置个性化广告
- ; customDevice - 收集设备信息(IMEI/OAID/MAC/AndroidId/位置)
- ; initCustomGroup - 初始化广告分组
- ; loadSplashAd - 加载开屏广告
- ; loadBannerAd - 加载横幅广告
- ; loadInterstitialAd - 加载插屏广告
- ; loadFeedAd - 加载信息流广告
- ; loadRewardVideoAd - 加载激励视频广告
- ; showSplashAd/showBannerAd/showInterstitialAd - 展示广告
- ; disposeAd - 销毁广告
- ; 等等...
- .end method
复制代码 修改后代码
- .method public onMethodCall(Lio/flutter/plugin/common/MethodCall;Lio/flutter/plugin/common/MethodChannel$Result;)V
- .registers 3
- .param p1 # Lio/flutter/plugin/common/MethodCall;
- .annotation build Landroidx/annotation/NonNull;
- .end annotation
- .end param
- .param p2 # Lio/flutter/plugin/common/MethodChannel$Result;
- .annotation build Landroidx/annotation/NonNull;
- .end annotation
- .end param
- .line 1
- const-string v0, ""
- invoke-interface {p2, v0}, Lio/flutter/plugin/common/MethodChannel$Result;->success(Ljava/lang/Object;)V
- return-void
- .end method
复制代码
囧次元成品安装包。。。 |
-
查看全部评分
总评分:好评 +2
金币 +2
|