跳转到内容

getInstalledRelatedApps() 浏览器支持

发布于

navigator.getInstalledRelatedApps() 会解析为一个数组,包含在调用方 Web 应用自身 related_applications 清单成员中声明、且已安装在用户设备上的相关、平台专属的 应用或 PWA。

  • 图例
  • 支持
  • 部分支持
  • 需开启标志
  • 不支持
  • 未知
浏览器 / 平台支持版本置信度来源备注
Chrome (Desktop, Windows)支持85低来源1
Chrome (Android)支持84低来源—
Edge (Desktop, Windows)支持85低来源2
Samsung Internet支持14.0低来源—
Opera (Desktop, Windows)支持71低来源3
Firefox (Desktop)不支持—低来源4
Safari (macOS)不支持—低来源5
Safari (iOS)不支持—低来源6

源数据: /compatibility/get-installed-related-apps.json · 全球使用占比: 74 % (StatCounter 2026-05)

来源: 规范 · MDN · 最近核验 2026-09-04 · 置信度: 低 (由来源计算)

调用该方法并检查解析出的列表,判断是否已安装相关应用,再决定是否展示自己的 安装提示:

const relatedApps = await navigator.getInstalledRelatedApps();
const nativeApp = relatedApps.find((app) => app.platform === 'play');
if (nativeApp) {
console.log('已安装原生对应应用:', nativeApp.id);
}

在调用前先特性检测 getInstalledRelatedApps,并在 API 不可用时回退到始终展示 自己的安装界面:

async function hasInstalledCounterpart() {
if (!('getInstalledRelatedApps' in navigator)) {
return false;
}
const relatedApps = await navigator.getInstalledRelatedApps();
return relatedApps.length > 0;
}
  • 调用方 Web 应用的清单必须在自身的 related_applications 成员中列出相关的 Android 应用、UWP 应用或 PWA,否则该方法始终解析为空。
  • 相关的平台专属应用或 PWA 也必须反向声明这一关系——具体每个平台当前的 验证要求,请参见 MDN 的 related_applications 参考文档。
  • 在非顶层浏览上下文中调用该方法时,返回的 Promise 会以 InvalidStateError DOMException 被拒绝(reject)。
  • 根据上表,对于任何不支持这一 WICG API 的浏览器,请始终保留展示自己安装 提示的回退路径。

← 返回兼容性浏览器。