【问题标题】:Detect firefox android in firefox addon?在firefox插件中检测firefox android?
【发布时间】:2017-12-17 18:02:39
【问题描述】:

在 Firefox Quantum 之前,我可以使用下面的这个 sn-p 在 firefox 插件中检测到 firefox android。

const { Cc, Ci } = require('chrome');
/**
  * Is firefox android?
  *
  * @returns {boolean} true if there is firefox android in firefox addon
  * @see https://developer.mozilla.org/en-US/Add-ons/Firefox_for_Android/Code_snippets#Supporting_both_desktop_and_mobile
  */
module.exports = () =>
Cc['@mozilla.org/xre/app-info;1']
  .getService(Ci.nsIXULRuntime)
  .widgetToolkit.toLowerCase() === 'android';

但是现在,这个 sn-p 被归档了。如何检测?

【问题讨论】:

    标签: firefox-addon firefox-addon-webextensions firefox-android


    【解决方案1】:

    Cc、Ci 和 require-syntax 是 XUL/SDK 技术,已被 WebExtensions 弃用。

    在 WebExtension 中,您可以使用 browser.runtime.getPlatformInfo 检索平台信息:

    browser.runtime.getPlatformInfo().then((info) => {
        console.log(info.os); // will return android
    });
    

    这将解析为一个 PlatformInfo 对象,其中包含将设置“android”的“os”属性。 https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/runtime/PlatformOs

    有关详细信息,请参阅 https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/runtime/getPlatformInfo

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-25
      • 1970-01-01
      • 2011-06-26
      相关资源
      最近更新 更多