Sign inSign up

mark8857857/appdrop

By mark8857857

•Updated 2 days ago

搭建一个私人的apk仓库,可供电视使用

Image
0

2.0K

mark8857857/appdrop repository overview

⁠AppDrop 闪装 — 个人 APK 管理与分发系统

AppDrop 是一个个人自用的 APK 管理与分发系统,支持通过 Web 后台管理 APK 仓库,手机端浏览、下载、安装 APK,并支持通过 WiFi ADB 推送到局域网电视设备。

它适合部署在自用服务器或 NAS 中,用于统一管理 Android 应用,尤其适合需要频繁给电视/机顶盒装 APK 的场景。

⁠主要功能

⁠1. 🔐 Web 网页管理后台

支持自定义账号密码登录保护,默认账号为:

  • 用户名:admin
  • 密码:appdrop

首次部署后强烈建议修改默认密码,可通过环境变量 APPDROP_ADMIN_PASSWORD 或者账号编辑设置。

⁠2. 🏠 仓库管理

以卡片形式展示所有 APK 分类仓库,支持创建、编辑、删除、拖拽排序。

每个仓库可设置独立的 6 位数字仓库码,加密仓库对普通用户隐藏,输入仓库码后方可进入下载。

默认仓库不可删除,已删除仓库中的应用会自动迁移至默认仓库。

⁠3. 📦 APK 管理

支持上传 APK 文件,自动解析应用名称、版本号、包名和应用图标。

提供方形卡片网格展示应用列表,支持手动替换图标或从 APK 内提取的候选图标中切换。

支持查看应用详情、修改应用名称、记录下载次数、删除应用。

⁠4. 📥 手机端下载安装

提供 Android 客户端(Kotlin Jetpack Compose),支持:

  • 浏览仓库与应用列表
  • 下载 APK 并调用系统安装器
  • 仓库码解锁加密仓库
  • 手动刷新同步服务端数据
⁠5. 📺 电视端推送安装

手机端通过扫描电视端二维码完成配对,将服务端地址和登录凭证通过局域网直推到电视。

电视端(平板/机顶盒同理)显示仓库与应用列表,可直接下载安装。

推送过程基于自实现的 ADB 客户端(TCP Socket 协议),无需安装 adb 二进制文件,手机直连电视(WiFi ADB tcpip 5555),不经服务端中转。

⁠6. 👥 多用户管理

支持创建多个用户账号,区分管理员和普通用户角色。

管理员可通过 Web 后台管理所有仓库和应用;普通用户受仓库码限制,只能访问未加密的仓库。

⁠推荐运行方式

⁠Docker Run 示例
docker run -d \
  --name appdrop \
  --restart unless-stopped \
  -p 8858:8858 \
  -v ~/appdrop:/data \
  -e APPDROP_ADMIN_PASSWORD=你的密码 \
  mark8857857/appdrop:latest
⁠Docker Compose 示例
services:
  appdrop:
    image: mark8857857/appdrop:latest
    container_name: appdrop
    restart: unless-stopped
    ports:
      - "8858:8858"
    volumes:
      - ~/appdrop:/data
    environment:
      - APPDROP_DATA_DIR=/data
      - APPDROP_DB_PATH=/data/app.db
      - APPDROP_ADMIN_PASSWORD=你的密码

访问地址 部署完成后,浏览器访问:

http://服务器IP:8858⁠ 默认登录信息 默认用户名:admin 默认密码:appdrop

内置客户端 APK 镜像内已打包最新的 Android 客户端 APK,容器首次启动时会自动导入默认仓库,开箱即用。

注意事项 AppDrop 默认端口为 8858 数据持久化到宿主机映射目录,重装容器不丢失 电视端推送需要手机和电视在同一局域网,且电视已开启 WiFi ADB(tcpip 5555) 建议仅在内网环境使用,如需公网访问请配合反向代理和 HTTPS

Tag summary

Content type

Image

Digest

sha256:e591fc5e7…

Size

106.9 MB

Last updated

2 days ago

docker pull mark8857857/appdrop