米家扩展程序打开第三方应用

米家扩展程序打开第三方应用 - 飞书云文档 (mioffice.cn)
米家扩展程序打开第三方应用

import { Host } from 'miot';

import logger from '../../../utils/logger';

const noop = undefined;
/**
 * 打开第三方应用。如手机未安装应用将会跳转应用市场。
 * @param schema {string} See: https://baike.baidu.com/item/Schema
 * @param packageName {string} Android 包名。前往小米应用商店搜索应用后查看包名:
 *                             https://app.mi.com/
 * @param appStoreId {string} APP Store 应用 ID。
 *                            获取应用 ID 可以在 APP Store 搜索该应用后点击分享。
 */
export function open3rdApp(schema, packageName, appStoreId) {
  // Android 应用市场链接:market://details?id=包名
  // 获取 Android 包名:前往小米应用商店搜索应用后查看 https://app.mi.com/
  const androidMarketLink = `market://details?id=${ packageName }`;
  // APP Store 链接:https://apps.apple.com/app/应用ID
  // 获取应用 ID 可以在 APP Store 搜索该应用后点击分享
  const appStoreLink = `https://apps.apple.com/app/${ appStoreId }`;
  const marketSchema = Host.isAndroid ? androidMarketLink : appStoreLink;
  Host.jumpToThirdpartyApplication(schema, noop, noop)
    .catch(() => Host.jumpToThirdpartyApplication(marketSchema, noop, noop))
    .catch((e) => logger.e(`open 3rd app err: ${ JSON.stringify(e) }`));
}

/**
 * 打开小米运动健康
 */
export function openMiHealth() {
  const schema = 'mihealth://intent?pageType=sporttab';
  const packageName = 'com.mi.health';
  const appStoreId = 'id1493500777';
  open3rdApp(schema, packageName, appStoreId);
}

/**
 * Android 打开小米钱包,iOS 打开钱包
 */
export function openWallet() {
  const schema = Host.isAndroid ? 'sacf776a64://mihome' : 'wallet://mihome';
  const packageName = 'com.xiaomi.jr';
  const appStoreId = 'id1160481993';
  open3rdApp(schema, packageName, appStoreId);
}

/**
 * 打开米兔 APP
 */
export function openMiRabbit() {
  const schema = 'xiaoxun://mihome';
  const packageName = 'com.imibaby.client';
  const appStoreId = 'id1078501077';
  open3rdApp(schema, packageName, appStoreId);
}

/**
 * 打开米兔 APP 门卡页面
 */
export function openMiRabbitCard() {
  const schema = 'imibaby://doorcard';
  const packageName = 'com.imibaby.client';
  const appStoreId = 'id1078501077';
  open3rdApp(schema, packageName, appStoreId);
}

你可能感兴趣的:(React,Native,react,native,javascript,android,ios)