#daiizメモ

Scrapboxに夢中

Windows、Mac、LinuxでChromeアプリが廃止される! 開発者はどうすればよいか?

驚いた

どういうことか

Chrome OS以外のOSでは,Chromeアプリ(Chrome Packaged Apps と Chrome Hosted Apps)が2018年までに廃止されるそうです.

jp.techcrunch.com

Chromeアプリとは,Chromeのブックマークバーの左隅にある f:id:daiiz:20160821021247p:plain をクリックして開いた先のページ*1で一覧されているアプリたちのこと.Chromium Blog のポストによれば,これらのアプリは

  • 2016 末〜: Chrome OSユーザー以外の,Chromeアプリの新規出品は不可になる.すでに公開済みのものについては,どのOSからでも更新可能.
  • 2017 後半: Windows, Mac, Linux ユーザーに対してはChromeウェブストアでChromeアプリが表示されなくなる.拡張機能とテーマは引き続き提供される.
  • 2018 初め: Windows, Mac, Linux ユーザーはChromeアプリを使用できなくなる.

のようなスケジュールで段階的に廃止される.


f:id:daiiz:20160304231004p:plain:h34 f:id:daiiz:20160304231004p:plain:h34 f:id:daiiz:20160304231004p:plain:h34
ここからは開発者向け情報

どうするか

このニュースが発表されたChromium Blog の記事のタイトルが『From Chrome Apps to the Web』であった通り,ウェブアプリ化することが推奨されているように思える. 昔に比べて充実してきたブラウザAPI や Service worker,web push を使って Progressive Web Apps を作ろうよという感じで書かれていた.

Transitioning from Chrome apps on Windows, Mac, and Linux - Google Chrome

というページも用意されていて,Chromeアプリの移行について丁寧に書かれている.このページでは以下のような選択肢が挙げられている.

  • Build a web app

    • Progressive Web Apps を構築する方法.手元にあるChromeアプリをそのままウェブアプリに変換してくれるツール「Caterpillar」も提供されている.
    • 自分のChromeアプリをウェブアプリに置き換えるにあたってブラウザAPIでは不十分だと思う部分があれば,それを送信できるフォームも設けられている.
  • Build an extension-enhanced web page

    • Chrome拡張機能とウェブアプリの合わせ技で提供する方法.ブラウザAPIでは不十分な点を拡張機能APIで補う作戦.
    • これまで通り,拡張機能とウェブサイトを連携させるMessage Passingの技術が使える.
  • Build an extension

    • ChromeアプリをChrome拡張機能に変更する方法
    • Browser actionを使ってブラウザ上に小窓を表示させることができる.
  • Build a native app

    • PCにインストールするタイプのネイティブアプリを構築する方法.
    • Electoron」や「NW.js 」などのフレームワークを使えば,Chromeアプリと同じHTML+JavaScriptでデスクトップアプリを作れる.

ひとまずこんな感じ.

追記1

僕もいくつかChrome アプリを開発してウェブストアに公開しているので,これから徐々に移行作業をしていきます.以降の方針や,作業の様子も記事にする予定です.(2016/08/22 15:00)

追記2

Chrome ウェブストアのデベロッパーダッシュボード(自分が出品しているアプリを管理するための画面)に以下のようなメッセージが出ていることを確認しました.(2016/09/08 01:00) f:id:daiiz:20160908015342p:plain

2016 年 11 月以降、新しく公開するパッケージ化アプリやホスト型アプリの利用は Chrome OS のみに制限され、Windows、Mac、Linux のユーザーは利用できなくなります。既存のアプリは引き続きすべての主要なプラットフォームで利用できます。- 詳細

*1:chrome://apps/