安装包图标

Tern

Follow app releases where they are published and check them before they install
新版本 0.4.0
F-Droid apps get the build made for the device's processor. An app a few releases behind shows every release's notes since yours. Checksums are found in more places, a repeating failure alerts once, and install confirmations share one alert. On Android 12 and later a notification's Update and new Skip buttons need the phone unlocked. Settings says when Android holds the background check back, and a silent Orbot stops a background run once. The app list takes page, Home, End and search keys.
A lot of good Android apps never reach a store, or reach it days late. Their developers put releases on GitHub, GitLab, Codeberg, a repository they run, or a plain web page. Tern follows those places for you. Paste a link or share one from the browser and it figures out what it is looking at.

Then it checks the file, because a release page can be tampered with and a download can be swapped on the way.

The signature has to be from the same certificate as the app already on your phone. Tern remembers that certificate from the first install, and your export carries it to your next phone.

If the publisher gave a checksum, the file has to match it.

The file has to be the app you asked for, and not an older version of it.

Tern reads the version and the signer out of a file while it is still on the server, a few kilobytes of it, so an update is only offered when there really is one.

On Android 12 and newer, updates go in without asking once Tern has installed the app. With Shizuku or Dhizuku they go in without asking, first installs too. If Android does want a confirmation, you get a notification you can update from. Background checks use Android's own scheduler, as often as every 15 minutes, and you choose whether they run on mobile data or only while charging.

No account. Nothing is reported to anyone. HTTPS only.

Works on phones, tablets and Android TV, where the remote is all you need. On a TV, choose Send from a phone: scan the code it shows, and your phone sends links or your app list, sealed with that code so nobody else on the network can read or change them.

Choose Orbot in the settings and everything Tern sends goes through Tor. If Orbot is not there, nothing is sent at all.

For well-known apps Tern already carries the developer's certificate, so even the first install is checked. Make it look the way you like: colours from your wallpaper or your own, contrast, density, corners and icon shapes.

English and 28 other languages; the translations are machine-made and corrections are welcome.

Obtainium user? Import your export file and your apps come along, with every option they had. Tern writes Obtainium's format too.

Sort, group and filter your list, give categories colours, and see what is waiting on a home-screen widget or a Quick Settings tile.

Reads: GitHub releases and Actions builds, GitLab, Forgejo, Gitea, Codeberg, F-Droid, IzzyOnDroid, any F-Droid format repository (signature checked), web pages, direct links, Jenkins, SourceHut, SourceForge, itch.io, Telegram and Neutron Code.

Off until you turn them on in Settings: the third-party stores APKPure, Aptoide, APKCombo, APKMirror (tracking only), Tencent, Huawei AppGallery, Samsung Galaxy Store and vivo. A store serves its own copies of apps, not files from the developer's own site, and Tern says so. The first install from a store decides which certificate later updates must carry, unless Tern already knows the developer's. Tern does not read sites that offer modified apps, or stores that answer only their own app.

Who Tern talks to: the forges, repositories, instances and sites of the apps you add; for an F-Droid app also F-Droid's data on gitlab.com and the changelog it names; the icon hosts of those sources, such as raw.githubusercontent.com; a third-party store's own hosts only when stores are on and you add an app from it; and the places you tick when you search, which are GitHub, Codeberg, GitLab and search.f-droid.org at first. Every request says it comes from Tern. PRIVACY.md lists every host.

版本

尽管下面提供了 APK 安装包的下载选项,但你应该注意,以这种方式安装将不会收到更新通知,这是一种不太安全的下载方式。 我们建议你安装使用 F-Droid 客户端。

下载 F-Droid
  • 版本 0.4.0 (400) 推荐 更新于 2026-10-08

    arm64-v8a armeabi-v7a x86 x86_64

    该版本需要 Android 9.0 及以上版本。

    此包由原始开发者构建并签名,并保证对应于此源代码 tarball。

    权限
    • 查看网络连接
      允许此应用查看网络连接的相关信息,例如哪些网络存在并处于连接状态。
    • android.permission.ENFORCE_UPDATE_OWNERSHIP
    • 运行前台服务
      允许此应用使用前台服务。
    • 运行“dataSync”类型的前台服务
      允许该应用使用“dataSync”类型的前台服务
    • 拥有完全的网络访问权限
      允许此应用创建网络套接字和使用自定义网络协议。浏览器和其他应用提供了将数据发送到互联网的方法,因此不需要此权限将数据发送到互联网。
    • 显示通知
      允许该应用显示通知
    • 查询所有软件包
      允许应用查看所有已安装的软件包。
    • 开机启动
      允许此应用在系统完成引导后立即启动。这样可能会延长开机时间,并因始终运行而降低手机总体运行速度。
    • 请求删除文件包
      允许此应用请求删除安装包。
    • 请求安装文件包
      允许此应用请求安装软件包。
    • 无需用户操作即可更新应用
      允许拥有权限的应用直接更新其先前安装的应用,无需用户操作
    • com.rosan.dhizuku.permission.API
    • io.github.munzzyy.tern.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
    • moe.shizuku.manager.permission.API_V23

    下载 APK 6.9 MiB PGP 签名 | 构建日志

  • 新版本 0.3.0
    A file signed with more than one key passes only when every one of its keys is pinned, and an update only when the installed app has exactly the same keys. One matching key used to be enough.

    On Android 12 and 12L the question that asks to allow installs no longer says Android will close Tern.
  • 版本 0.3.0 (300) - 更新于 2026-10-04

    arm64-v8a armeabi-v7a x86 x86_64

    该版本需要 Android 9.0 及以上版本。

    此包由原始开发者构建并签名,并保证对应于此源代码 tarball。

    权限
    • 查看网络连接
      允许此应用查看网络连接的相关信息,例如哪些网络存在并处于连接状态。
    • android.permission.ENFORCE_UPDATE_OWNERSHIP
    • 运行前台服务
      允许此应用使用前台服务。
    • 运行“dataSync”类型的前台服务
      允许该应用使用“dataSync”类型的前台服务
    • 拥有完全的网络访问权限
      允许此应用创建网络套接字和使用自定义网络协议。浏览器和其他应用提供了将数据发送到互联网的方法,因此不需要此权限将数据发送到互联网。
    • 显示通知
      允许该应用显示通知
    • 查询所有软件包
      允许应用查看所有已安装的软件包。
    • 开机启动
      允许此应用在系统完成引导后立即启动。这样可能会延长开机时间,并因始终运行而降低手机总体运行速度。
    • 请求删除文件包
      允许此应用请求删除安装包。
    • 请求安装文件包
      允许此应用请求安装软件包。
    • 无需用户操作即可更新应用
      允许拥有权限的应用直接更新其先前安装的应用,无需用户操作
    • com.rosan.dhizuku.permission.API
    • io.github.munzzyy.tern.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
    • moe.shizuku.manager.permission.API_V23

    下载 APK 6.9 MiB PGP 签名 | 构建日志

  • 新版本 0.2.2
    The well known apps show the address each one comes from, and the list says that opening one asks that address for its newest release.
  • 版本 0.2.2 (202) - 更新于 2026-10-03

    arm64-v8a armeabi-v7a x86 x86_64

    该版本需要 Android 9.0 及以上版本。

    此包由原始开发者构建并签名,并保证对应于此源代码 tarball。

    权限
    • 查看网络连接
      允许此应用查看网络连接的相关信息,例如哪些网络存在并处于连接状态。
    • android.permission.ENFORCE_UPDATE_OWNERSHIP
    • 运行前台服务
      允许此应用使用前台服务。
    • 运行“dataSync”类型的前台服务
      允许该应用使用“dataSync”类型的前台服务
    • 拥有完全的网络访问权限
      允许此应用创建网络套接字和使用自定义网络协议。浏览器和其他应用提供了将数据发送到互联网的方法,因此不需要此权限将数据发送到互联网。
    • 显示通知
      允许该应用显示通知
    • 查询所有软件包
      允许应用查看所有已安装的软件包。
    • 开机启动
      允许此应用在系统完成引导后立即启动。这样可能会延长开机时间,并因始终运行而降低手机总体运行速度。
    • 请求删除文件包
      允许此应用请求删除安装包。
    • 请求安装文件包
      允许此应用请求安装软件包。
    • 无需用户操作即可更新应用
      允许拥有权限的应用直接更新其先前安装的应用,无需用户操作
    • com.rosan.dhizuku.permission.API
    • io.github.munzzyy.tern.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
    • moe.shizuku.manager.permission.API_V23

    下载 APK 6.9 MiB PGP 签名 | 构建日志