Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Repository files navigation

今日热点图标

今日热点

一个简洁、原生的 Android 热榜聚合应用,一页查看微博、知乎、百度、B站和抖音热点。

Android 8.0+ Java 17 Version 0.2.2 XML + ViewBinding MIT License

项目简介

“今日热点”是一款无需登录的原生 Android 热榜 Demo。应用直接读取公开热榜接口,将分散在不同平台的热门内容整理到统一界面中,点击条目即可通过系统浏览器查看原始内容。

应用不是 WebView 套壳,界面、网络请求、缓存和状态管理均使用 Android 原生方案实现。

主要功能

  • 聚合微博、知乎、百度、B站、抖音五个平台热榜
  • 前三名焦点展示,并提供完整榜单
  • 平台切换与五分钟内存缓存
  • 手动刷新、加载状态、失败重试和缓存降级
  • 点击热点跳转原始内容,不在 App 内二次转载正文
  • 手机单列、平板三列的响应式布局
  • Android 15 及以上边到边系统栏适配
  • 无登录、无广告、无推送、无后台定时刷新

应用截图

微博热搜 知乎热榜 抖音完整榜单
今日热点微博热搜页面 今日热点知乎热榜页面 今日热点抖音完整榜单页面

刷新与额度说明

App 直接从用户手机请求 UAPI,不经过项目作者的中转服务器。

  • 首次打开 App 时,只请求默认的微博热榜。
  • 切换到未缓存的平台时,请求对应平台一次。
  • 同一平台五分钟内再次打开时,优先使用内存缓存。
  • 点击“刷新”会忽略五分钟缓存并立即重新请求。
  • App 不会在后台或每天定时自动刷新。
  • 访客额度通常按公网 IP 计算;同一家庭、公司、学校或公共 Wi-Fi 下的设备可能共用额度。
  • 手机流量也可能使用运营商共享出口,因此无法保证每台设备始终拥有独立额度。

接口计费、限流和访客额度由 UAPI 决定,可能随服务策略调整,请以其官方说明和实时响应为准。

安装

当前最低支持 Android 8.0(API 26)。

  1. 在仓库的 GitHub Releases 页面下载最新版 APK。
  2. 在手机上允许浏览器或文件管理器“安装未知应用”。
  3. 打开 APK 并完成安装。

当前提供的是 Debug APK,适合演示和个人测试。正式上架应用商店前,应使用独立签名构建 Release 包,并补充隐私政策和商店素材。

开发环境

项目 版本
Android Studio 当前稳定版
JDK 17 或更高;推荐使用 Android Studio 自带 JBR
Gradle 8.13
Android Gradle Plugin 8.13.2
compileSdk / targetSdk 36
minSdk 26
业务语言 Java 17
UI XML + ViewBinding

本地构建

使用 Android Studio 打开项目根目录,等待 Gradle 同步完成后运行 app 配置即可。

也可以在命令行执行:

./gradlew assembleDebug

默认 APK 输出位置:

app/build/outputs/apk/debug/app-debug.apk

执行完整验证并生成便于上传到 GitHub Releases 的 APK:

./gradlew clean testDebugUnitTest lintDebug packageVerifiedDebugApk

输出位置:

dist/hot_everyday-v0.2.2-debug.apk

如果 macOS 终端默认 Java 版本过低,可以先使用 Android Studio 自带的 JDK:

export JAVA_HOME="/Applications/Android Studio.app/Contents/jbr/Contents/Home"

技术架构

项目采用简化的 MVVM + Repository 结构:

MainActivity / RecyclerView
            ↓
       HotViewModel
            ↓
       HotRepository
       ↙           ↘
五分钟内存缓存     HotApiClient
                       ↓
                     UAPI
  • MainActivity:界面展示、平台切换和生命周期协调
  • HotViewModel:管理当前平台与页面状态
  • HotRepository:统一处理网络数据、缓存和失败降级
  • HotApiClient:使用 HttpURLConnection 请求并解析 JSON
  • FeedAdapter:通过 RecyclerView 多类型列表展示热榜

项目结构

hot_everyday_android/
├── app/
│   └── src/main/
│       ├── java/com/hoteveryday/app/
│       │   ├── data/          # API 与 Repository
│       │   ├── model/         # 数据及页面状态
│       │   ├── ui/            # Activity、Adapter、格式化
│       │   └── viewmodel/     # ViewModel
│       └── res/               # 布局、颜色、文字和图标资源
├── docs/
│   ├── assets/                # 图标与应用截图
│   └── USAGE.md               # 安装与使用说明
├── tools/                     # 图标生成工具
└── README.md

数据来源

热榜数据来自 UAPI 热榜接口。热点标题、排名、热度和原始链接的权利归相应平台及内容提供者所有。

隐私说明

  • App 不要求注册或登录。
  • App 不集成广告、统计或用户跟踪 SDK。
  • App 不建立用户数据库,也不向项目作者的服务器上传数据。
  • App 仅需要网络访问权限。
  • 请求 UAPI 时,第三方服务可能获得用户公网 IP、User-Agent 等常规网络信息。
  • 打开热点原文后,将进入对应平台或浏览器,其数据处理规则由该平台决定。

已知限制

  • UAPI 是第三方服务,可用性、数据格式和额度策略可能变化。
  • 缓存仅保存在 App 进程内,进程被系统清理后缓存会丢失。
  • 当前没有收藏、搜索、推送、离线数据库和 AI 摘要功能。
  • 当前版本尚未完成应用商店签名与发布流程。

参与贡献

欢迎通过 Issue 提交问题和建议,也欢迎通过 Pull Request 改进界面、稳定性和平台适配。提交代码前请确保:

./gradlew testDebugUnitTest lintDebug assembleDebug

能够完整通过。

相关文档

开源许可证

本项目基于 MIT License 开源。你可以使用、修改、分发和商用本项目,但必须保留原始版权声明和许可证文本。

免责声明

本项目用于技术学习和产品 Demo,不隶属于微博、知乎、百度、哔哩哔哩、抖音或 UAPI,也不代表上述平台。请勿通过频繁切换 IP、自动化高频刷新等方式规避第三方接口限制,使用者应遵守数据来源服务和内容平台的相关规则。

About

一个使用 Java + XML 开发的原生 Android 热榜聚合 App,支持微博、知乎、百度、B站和抖音。

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages