一个轻量级的 iOS 原生应用,用于浏览 爱丽丝书屋 网站,内置广告屏蔽功能。
- 📖 首页浏览 - 原创专区、重磅推荐、分类排行榜
- 🔍 搜索功能 - 支持书名、作者、标签搜索
- 📚 书架管理 - 个人书架收藏
- 📂 分类浏览 - 全部小说分类
- 🏆 排行榜 - 日/周/月/总排行
- 👤 用户系统 - 登录/注册/个人中心
- 🌙 深色模式 - 跟随网站深色模式切换
- 🔔 站内通知
- 🚫 广告屏蔽 - 三层广告过滤:
- CSS 注入隐藏广告 DOM 元素
- JavaScript MutationObserver 动态移除新插入的广告
- WKContentRuleList 网络层拦截广告请求
- 📊 加载进度条 - 页面顶部显示加载进度
↕️ 下拉刷新 - 下拉页面刷新内容- ← → 手势导航 - 左右滑动前进/后退
- 🔗 智能链接处理 - 站内链接应用内打开,外部链接跳转 Safari
- 💾 登录状态保持 - 使用持久化 Cookie 存储
- 🖥️ target="_blank" 处理 - 新窗口链接在应用内打开
- iOS 15.0 或更高版本
- iPhone / iPad
⚠️ 需要 macOS + Xcode 15 或更高版本
由于 iOS 应用必须使用 Xcode 编译,你需要:
- 一台运行 macOS 的 Mac 电脑
- 安装 Xcode 15+
- (可选)Apple Developer 账号(免费账号即可用于个人设备调试)
项目已配置 GitHub Actions 自动化工作流,直接推送即可在云端 macOS 构建机完成编译并下载 IPA:
- 在 GitHub 上新建一个仓库(例如名为
AliceSW)。 - 在本地项目根目录关联远程仓库并推送:
git remote add origin https://github.com/<你的用户名>/AliceSW.git git push -u origin main
- 打开 GitHub 仓库页面,点击顶部的 Actions 标签页。
- 会看到名为 Build AliceSW IPA 的工作流正在自动构建。
- 构建完成后,点击该次运行记录,在页面底部的 Artifacts 处点击下载
AliceSW-IPA。 - 解压后即得
AliceSW.ipa文件!可以直接通过 TrollStore / AltStore / Sideloadly 侧载安装。
- 将整个
AliceSW项目文件夹复制到 Mac 上 - 双击
AliceSW.xcodeproj用 Xcode 打开 - 在 Xcode 左上角选择目标设备(你的 iPhone 或模拟器)
- 如果要安装到真机:
- 进入 Xcode → Signing & Capabilities
- 选择你的 Apple ID 作为 Team
- 根据需要修改 Bundle Identifier
- 按
Cmd + R运行,或Cmd + B仅编译
# 赋予执行权限
chmod +x build_ipa.sh
# 运行打包脚本
./build_ipa.sh脚本提供两种打包方式:
- 无签名 IPA - 适用于 TrollStore / AltStore / Sideloadly 侧载
- 签名 IPA - 需要 Apple Developer 账号
如果你的设备已安装 TrollStore:
- 将
.ipa文件传输到设备 - 使用 TrollStore 打开并安装
- 在电脑上安装 AltServer
- 在手机上安装 AltStore
- 将
.ipa文件通过 AltStore 安装 - 注意:每 7 天需要重新签名
- 下载安装 Sideloadly
- 连接 iPhone 到电脑
- 将
.ipa拖入 Sideloadly - 输入 Apple ID 进行签名安装
AliceSW/
├── AliceSW.xcodeproj/
│ └── project.pbxproj # Xcode 项目配置
├── AliceSW/
│ ├── AppDelegate.swift # 应用生命周期
│ ├── SceneDelegate.swift # 场景管理
│ ├── ViewController.swift # 主控制器 (WebView + 广告屏蔽)
│ ├── Info.plist # 应用配置
│ ├── Main.storyboard # 主界面
│ ├── LaunchScreen.storyboard # 启动画面
│ └── Assets.xcassets/ # 图标和颜色资源
├── build_ipa.sh # IPA 打包脚本
└── README.md # 本文件
本应用使用三层防御机制屏蔽广告:
| 层级 | 技术 | 作用 |
|---|---|---|
| CSS 注入 | WKUserScript | 隐藏 .webBody.gg、.index_ddg、iframe 等广告容器 |
| DOM 清理 | JavaScript + MutationObserver | 移除广告 DOM 元素,监控并清除动态插入的广告 |
| 网络拦截 | WKContentRuleList | 阻止 30+ 广告域名的网络请求 |
- 站内推广链接(AI女友、色情游戏等外部推广)
- 第三方广告网络(Google Ads、DoubleClick 等)
- 弹窗广告和覆盖层广告
- iframe 嵌入广告
本项目仅供学习交流使用。网站内容版权归原作者所有。