Недопустимый манифест на Pixel Slate (Chrome OS) - PullRequest
0 голосов
/ 22 января 2019

Пользователи моего расширения Chrome сообщают о проблемах при установке его на устройстве Pixel Slate. Ошибка просто говорит «Недопустимый манифест», и расширение не может быть установлено.

Однако на устройстве Windows или OSX такой ошибки нет, и манифест, по-моему, действителен на основании моей проверки.

Кто-нибудь знает, в чем может быть проблема?

Манифест следует:

{
  "manifest_version": 2,

  "name": "ProTABS - Tab Management for Pro's",
  "short_name": "ProTABS",
  "description": "\"I got 99 problems, but a tab ain't one.\"  An intelligent tab manager for the everyday user.",
  "version": "1.5.1",

  "minimum_chrome_version": "55",

  "icons": {
    "16": "./static/icons/icon16.png",
    "32": "./static/icons/icon32.png",
    "48": "./static/icons/icon48.png",
    "128": "./static/icons/icon128.png"
  },

  "browser_action": {
    "default_popup": "frontend.html"
  },

  "background": {
    "page": "backend.html",
    "persistent": false
  },

  "commands": {
    "_execute_browser_action": {
      "suggested_key": {
        "windows": "Ctrl+Shift+A",
        "mac": "Command+Shift+A",
        "linux": "Ctrl+Shift+A"
      }
    }
  },

  "permissions": ["tabs", "webNavigation", "storage", "alarms"]
}

1 Ответ

0 голосов
/ 27 января 2019

Я обнаружил причину проблемы после того, как попробовал расширение в Chrome OS Emulator и попытался загрузить его как упакованное расширение.

В этом случае неправильный манифест был вызван разделом:

"commands": {
  "_execute_browser_action": {
    "suggested_key": {
      "windows": "Ctrl+Shift+A",
      "mac": "Command+Shift+A",
      "linux": "Ctrl+Shift+A"
    }
  }
}

Проблема заключалась в том, что chromeos не было указано в качестве платформы на карте suggested_key, а ключ default не был указан.

В моем случае мне удалось упростить настройку следующим образом (поскольку на Mac Chrome отображает Ctrl на Command):

"commands": {
  "_execute_browser_action": {
    "suggested_key": {
      "default": "Ctrl+Shift+A",
    }
  }
}

Добавление default гарантирует, что манифест будет действителен и для любых будущих платформ, если у них есть ключи, совместимые с ключами по умолчанию.

...