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
610
今だから始めよう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
430
MadoRemixのスライドサンプル
daru
0
600
Other Decks in Programming
See All in Programming
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
440
Patterns of Patterns
denyspoltorak
0
420
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
10
1.5k
Developing static sites with Ruby
okuramasafumi
1
340
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
130
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
7
4.3k
.NET Conf 2025 の興味のあるセッ ションを復習した / dotnet conf 2025 quick recap for backend engineer
tomohisa
0
110
JETLS.jl ─ A New Language Server for Julia
abap34
2
470
Python札幌 LT資料
t3tra
7
1.1k
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
520
[AI Engineering Summit Tokyo 2025] LLMは計画業務のゲームチェンジャーか? 最適化業務における活⽤の可能性と限界
terryu16
2
240
Deno Tunnel を使ってみた話
kamekyame
0
310
Featured
See All Featured
Done Done
chrislema
186
16k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
720
The browser strikes back
jonoalderson
0
300
Producing Creativity
orderedlist
PRO
348
40k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Paper Plane (Part 1)
katiecoart
PRO
0
2.8k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
1
340
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
110
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
2.8k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
0
280
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
180
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
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 ヒント☆