Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
今だから始めようChromeアプリ/chromeapps_startup
Search
Daru
May 11, 2018
Programming
0
580
今だから始めようChromeアプリ/chromeapps_startup
今更だけどChromeアプリ始めてみませんか?
Chrome OS Chrome App
Chromebook Chromebox
開発 自作 コーディング Javascript
Daru
May 11, 2018
Tweet
Share
More Decks by Daru
See All by Daru
Caret Mod 簡易ヘルプ/caret-mod-tiny-help
daru
0
22k
MadoRemix マスコット一言コメント表示機能で躓いたこと
daru
0
410
MadoRemixのスライドサンプル
daru
0
570
Other Decks in Programming
See All in Programming
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
740
Android 16KBページサイズ対応をはじめからていねいに
mine2424
0
200
Python型ヒント完全ガイド 初心者でも分かる、現代的で実践的な使い方
mickey_kubo
1
150
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
5
1.4k
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
880
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
260
テストから始めるAgentic Coding 〜Claude Codeと共に行うTDD〜 / Agentic Coding starts with testing
rkaga
14
5.1k
AI Agent 時代のソフトウェア開発を支える AWS Cloud Development Kit (CDK)
konokenj
4
530
Startups on Rails in Past, Present and Future–Irina Nazarova, RailsConf 2025
irinanazarova
0
150
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
870
Deep Dive into ~/.claude/projects
hiragram
14
6.9k
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
3
500
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
The Language of Interfaces
destraynor
158
25k
Six Lessons from altMBA
skipperchong
28
3.9k
How to Think Like a Performance Engineer
csswizardry
25
1.7k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Adopting Sorbet at Scale
ufuk
77
9.5k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Why Our Code Smells
bkeepers
PRO
336
57k
Building an army of robots
kneath
306
45k
Transcript
今更?今だから? 始めよう!! 今更?今だから? 始めよう!! Chromeアプリ Chromeアプリ Presented by Daru @2018 Presented by
Daru @2018 みなさん よろしく です!
ども、 (^-^)/ ども、 (^-^)/ Daru Daruです です ……あんた、 いま最高に 輝いてるよȶ
2016年8月 2016年8月 Googleは「Chrome」向けに Googleは「Chrome」向けに 「Chromeウェブストア」で配布している 「Chromeウェブストア」で配布している 「Chromeアプリ」の提供を2018年までに 「Chromeアプリ」の提供を2018年までに 終了すると発表した。 終了すると発表した。
(T.T)
2017年12月 2017年12月 Googleは「Chromeウェブストア」から Googleは「Chromeウェブストア」から "アプリ"セクションを削除した。 "アプリ"セクションを削除した。 。゚(゚´Д`゚)゚。
一応… 一応… 例外として 例外として Chrome OS Chrome OS 環境の場合だけは、 環境の場合だけは、
当面は 当面はChromeアプリのサポートを継続します。 Chromeアプリのサポートを継続します。 首の皮 一枚ね…
ちまたのChromebookユーザーの声… ちまたのChromebookユーザーの声… Androidアプリがあるし、いんじゃね ?! Androidアプリがあるし、いんじゃね ?! Google I/O 2018後のデベロッパーの声… Google
I/O 2018後のデベロッパーの声… Linuxアプリがくるし、いんじゃね ?! Linuxアプリがくるし、いんじゃね ?! まあ、 そう言うよね…
でも、おいらは、 でも、おいらは、 Chromebox Chromeboxユーザー ユーザー なんだよぉぉ!! なんだよぉぉ!! ご愁傷様 ですぅ…
「Chromeアプリ」はオワコン… (T_T) 「Chromeアプリ」はオワコン… (T_T) でも、Chromeアプリって良いとこたくさんあるんだけどなぁ でも、Chromeアプリって良いとこたくさんあるんだけどなぁ 基本javascriptだから手軽だし、 基本javascriptだから手軽だし、 便利なライブラリいっぱいあるし、 便利なライブラリいっぱいあるし、
PWAと違ってサーバいらないし、 PWAと違ってサーバいらないし、 ネイティブAPIだって ネイティブAPIだって マニアックなものがそこそこあるしw マニアックなものがそこそこあるしw いいとこ いっぱい あるんだ よねぇ…
そんなこんなで そんなこんなで メンテされない メンテされない既存のChromeアプリ 既存のChromeアプリ 見つからない 見つからない撤退のChromeアプリ 撤退のChromeアプリ 増えない 増えない新規のChromeアプリ
新規のChromeアプリ …… …… 助けてぇ♡ ド◦えも〜ん
ないんだったら作ればいいのよ! ないんだったら作ればいいのよ! ハ◦ヒ姐さん! そこにシビれる! あこがれるゥ!
そう、言うなれば そう、言うなれば 往年の 往年の8bit BASIC機 8bit BASIC機か! か! かつての かつてのX68000
X68000か! か! はたまた はたまたAmiga Amigaか! か! 年齢が バレバレ ですよw
やっぱ、 やっぱ、 オワコン状況じゃんw オワコン状況じゃんw ですよねぇ~
愚痴が長引いてしまいましたが… 愚痴が長引いてしまいましたが… とりあえず Chrome OS のユーザーさんであれば とりあえず Chrome OS のユーザーさんであれば
テキストエディタ テキストエディタがあれば があれば Chromeアプリ作りを始められます Chromeアプリ作りを始められます お手軽なんで 御託を並べず Let's Try!
とりあえずのファイル構成はこんな感じで、Web制作と似たようなもんです とりあえずのファイル構成はこんな感じで、Web制作と似たようなもんです 今回は ローカルフォルダ (ダウンロード)に つくってね!
manifest.json manifest.json Chrome固有の機能や制限の設定集みたいなものです Chrome固有の機能や制限の設定集みたいなものです 下記のとおり、まずは、ここから background.js を呼び出してます 下記のとおり、まずは、ここから background.js を呼び出してます
{ manifest_version :2, name : ChromeAppPrj , version :"0.0.1", icons :{ "128": assets/icon_128.png }, app :{ background :{ scripts :[ background.js ] } }, permissions :[ storage ] } アイコン用に 128x128pxの 画像も用意してね
background.js background.js Webページの裏で動いているアプリの土台みたいなものです Webページの裏で動いているアプリの土台みたいなものです 下記のとおり、次に、ここから index.html を呼び出してます 下記のとおり、次に、ここから index.html を呼び出してます
chrome.app.runtime.onLaunched.addListener(function(launchData){ chrome.app.window.create( index.html ,{ id: mainWindow , resizable:true, innerBounds:{ width:800, height:600 } }); }); ここから Window枠を つくるのね
index.html index.html Webページと基本的には同じです ただし、直接スクリプトは書けません Webページと基本的には同じです ただし、直接スクリプトは書けません 下記のとおり、次に、ここから styles.css と main.js
を呼び出してます 下記のとおり、次に、ここから styles.css と main.js を呼び出してます <!DOCTYPEhtml> <html> <head> <title>ChromeAppPrj</title> <linkrel= stylesheet href= styles.css > </head> <body> <h1id= greeting ></h1> <scriptsrc= main.js ></script> </body> </html> Htmlなら なんとか なるよね?
styles.css styles.css Webページと基本的には同じです Webページと基本的には同じです html{ background-color:white; color:black; } 見た目は 大事よ!
main.js main.js Chromeアプリでは .html に直接スクリプトが書けないのでこちらに書きます Chromeアプリでは .html に直接スクリプトが書けないのでこちらに書きます window.onload=function(){ document.querySelector(
#greeting ).innerText= Hello,World!Itis'+newDate(); }; Hello, World!は お約束事項です
コードの詳細等については長くなるので コードの詳細等については長くなるので 興味が湧いた人は 興味が湧いた人は に聞いてみてください に聞いてみてください 先人の方の記事がいくつか見つかるはずです… 先人の方の記事がいくつか見つかるはずです… (;^_^A あせあせ
(;^_^A あせあせ Google先生 Google先生 他力本願は 相変わらず ですねぇw
Chromeアプリ(ソースコード)を動かしてみよう! Chromeアプリ(ソースコード)を動かしてみよう! Chrome単体でも出来ますが、以下のアプリを使用するのがいいでしょう Chrome単体でも出来ますが、以下のアプリを使用するのがいいでしょう ただし、 ただし、GoogleDrive非対応 GoogleDrive非対応なのがちょっと残念… なのがちょっと残念… Chrome Apps
& Extensions Developer Tool Chrome Apps & Extensions Developer Tool Googleさん、 GoogleDrive対応 お願いします m( )m
Load unpackedボタンをクリックして Load unpackedボタンをクリックして 先の事例のChromeAppPrjフォルダを登録すればOK 先の事例のChromeAppPrjフォルダを登録すればOK 登録後にソースを修正した場合はReloadをクリック 登録後にソースを修正した場合はReloadをクリック ポチッ とな♪
登録が済んだら普通に使えます 登録が済んだら普通に使えます お手軽♪ お手軽ぅ
登録できない時はChromeの拡張機能設定が 登録できない時はChromeの拡張機能設定が デベロッパーモードになっているか デベロッパーモードになっているか 確認してみてください 確認してみてください 慌てず 確認! Ȳヨシ!
デバッグは右クリックでメニューを出して検証をクリック デバッグは右クリックでメニューを出して検証をクリック (内容によってはバックグラウンドページの検証) (内容によってはバックグラウンドページの検証) 天が呼ぶ! 地が呼ぶ! 人が呼ぶ! ȇを倒せと 俺を呼ぶ!
そうすれば そうすれば Chrome Dev Tools Chrome Dev Tools が使えます が使えます
\(^O^)/ \(^O^)/ ある意味での 最強デバッガが OSに標準装備!! ということです
ふたたび… ふたたび… Chrome Dev Tools の詳細等については長くなるので Chrome Dev Tools の詳細等については長くなるので
興味が湧いた人は 興味が湧いた人は に聞いてみてください に聞いてみてください (;^_^A あせあせ (;^_^A あせあせ Google先生 Google先生 マジ天丼!
ちなみに、 ちなみに、 いちから作り始めるのも勿論良いですが、 いちから作り始めるのも勿論良いですが、 既存の小さめな Open Source アプリを 既存の小さめな Open
Source アプリを 自分好みに微修正する 自分好みに微修正することから始めるのが ことから始めるのが おすすめです ^^ おすすめです ^^ 見た目が 変わるだけでも テンションUp!ͷ
と、まあ、自分の環境改善として、こんな感じで と、まあ、自分の環境改善として、こんな感じで Chromeアプリをいじって遊んで(苦しんで?w)います Chromeアプリをいじって遊んで(苦しんで?w)います 一部は 一部は でおすそわけ配布してますので でおすそわけ配布してますので 好みが合えばお使いください (。・ω・。)
好みが合えばお使いください (。・ω・。) Webストア Webストア 評価されると 地味に嬉しい みたいよ?w
さあ、これで、 さあ、これで、 あなたもスーパーハカーだ!! あなたもスーパーハカーだ!! (Chromeアプリ限定…) (Chromeアプリ限定…) ラボメン募集中?ですw ラボメン募集中?ですw みんなも Chromeアプリを
応援してね♡
おまけ おまけ Windowsがメインな人は Windowsがメインな人は を使えば を使えば Chromeアプリ(ソースコード)が Chromeアプリ(ソースコード)が そのまま動くよ! そのまま動くよ!
NW.js NW.js Next コ◦ン's ヒント☆