Web Share API — поделиться изображением

#android #google-chrome #progressive-web-apps

#Android #google-chrome #progressive-веб-приложения

Вопрос:

Я работаю над PWA, который является целью общего доступа, как указано в manifest.json. Этот PWA установлен (на рабочий стол) на моем устройстве Android 8.1 с Chrome 73 для Android.

При совместном использовании веб-страниц это, похоже, работает. Я успешно получаю параметры title and text . Из-за ограничений Android я не знаю, получаю ли я когда-либо url параметр.

Однако, когда вы делитесь изображениями конкретно (то есть не только страницами, ссылками, текстом), долго щелкая изображение в Chrome и нажимая «Поделиться изображением» — мой PWA не отображается в списке возможных целей. Dropbox, Bluetooth, Telegram и т. Д. Отображаются, Но мой PWA нет.

Вопрос: как я могу сделать так, чтобы мой PWA отображался для общего доступа к «Общему изображению»?

manifest.json

 {
  "share_target": {
    "action": "/#/share-target/",
    "method": "GET",
    "enctype": "application/x-www-form-urlencoded",
    "params": {
      "title": "title",
      "text": "text",
      "url": "url",
      "files": [{
        "name": "file",
        "accept": ["*/*"]
      }]
    }
  }
}
  

Изменение на POST , похоже, тоже не работает:

manifest.json

 {
  "share_target": {
    "action": "/#/share-target/",
    "method": "POST",
    "enctype": "multipart/form-data",
    "params": {
      "title": "title",
      "text": "text",
      "url": "url",
      "files": [{
        "name": "file",
        "accept": ["*/*"]
      }]
    }
  }
}
  

Комментарии:

1. Насколько мне известно, ни один браузер не поддерживает изображения для API Web Share.

2. В основном пытаюсь воспроизвести youtu.be/lNOP5dcLZF4?t=773 там, где это кажется хотя бы отчасти возможным.

3. В описании к видео сказано «просто заходим в Chrome Canary», поэтому вам, вероятно, понадобится Chrome 75 или 76.

Ответ №1:

Я знаю, что это старый вопрос, но для тех, кто ищет, я нашел здесь, что поддержка совместного использования файлов была добавлена в Chrome 76.

Поддержка текста и данных была добавлена в Chrome 71, а поддержка файлов была добавлена в Chrome 76.