Submit Search
Upload
CIのビルドを通知する仕組みをAndroidとFirestoreで作った話
•
0 likes
•
979 views
Takao Sumitomo
Follow
shibuya.apk #26 の講演資料です。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 66
Download now
Download to read offline
Recommended
[Cloud OnAir] G Suite って何が便利なの?Google AI を活用した働き方とは?今さら聞けない G Suite の最新便利機能をユ...
[Cloud OnAir] G Suite って何が便利なの?Google AI を活用した働き方とは?今さら聞けない G Suite の最新便利機能をユ...
Google Cloud Platform - Japan
Microsoft Copilot Studio.pdf
Microsoft Copilot Studio.pdf
Tomokazu Kizawa
(beta)アプリを成長させるためのログ取りとログ解析に必要なこと
(beta)アプリを成長させるためのログ取りとログ解析に必要なこと
Takao Sumitomo
IoT案件を70件やってみて分かった事
IoT案件を70件やってみて分かった事
Koichi Sasaki
LoRaWANとAzure IoT Hub接続ハンズオン
LoRaWANとAzure IoT Hub接続ハンズオン
Tomokazu Kizawa
Algolia
Algolia
DaikiSato10
アプリを成長させるためのログ取りとログ解析に必要なこと
アプリを成長させるためのログ取りとログ解析に必要なこと
Takao Sumitomo
Homekit 20140730
Homekit 20140730
Akira Sasaki
Recommended
[Cloud OnAir] G Suite って何が便利なの?Google AI を活用した働き方とは?今さら聞けない G Suite の最新便利機能をユ...
[Cloud OnAir] G Suite って何が便利なの?Google AI を活用した働き方とは?今さら聞けない G Suite の最新便利機能をユ...
Google Cloud Platform - Japan
Microsoft Copilot Studio.pdf
Microsoft Copilot Studio.pdf
Tomokazu Kizawa
(beta)アプリを成長させるためのログ取りとログ解析に必要なこと
(beta)アプリを成長させるためのログ取りとログ解析に必要なこと
Takao Sumitomo
IoT案件を70件やってみて分かった事
IoT案件を70件やってみて分かった事
Koichi Sasaki
LoRaWANとAzure IoT Hub接続ハンズオン
LoRaWANとAzure IoT Hub接続ハンズオン
Tomokazu Kizawa
Algolia
Algolia
DaikiSato10
アプリを成長させるためのログ取りとログ解析に必要なこと
アプリを成長させるためのログ取りとログ解析に必要なこと
Takao Sumitomo
Homekit 20140730
Homekit 20140730
Akira Sasaki
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
Hyperleger Tokyo Meetup
Deep Learning Lab: DIMo & Chainer
Deep Learning Lab: DIMo & Chainer
Preferred Networks
Computex Taipei 2016 Report
Computex Taipei 2016 Report
iot_nifty
Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方
Takahiro Fujiwara
SIerによるSIerのためのRaspberry Pi 入門
SIerによるSIerのためのRaspberry Pi 入門
catmoney
Rubyでオリジナルプログラムをつくろう
Rubyでオリジナルプログラムをつくろう
K K
GitHub Actionsを使ってAPI外部公開時の作業を自動化した話
GitHub Actionsを使ってAPI外部公開時の作業を自動化した話
KainumaRyo
映像解析IoTプラットフォーム SCORERの紹介
映像解析IoTプラットフォーム SCORERの紹介
Hideaki Suzuki
IBM Blluemix を Pepper とつないでみよう
IBM Blluemix を Pepper とつないでみよう
Takuji Kawata
Getting Started with Graph Database with Python
Getting Started with Graph Database with Python
ロフト くん
Gitlab ci & ecsへのデプロイ
Gitlab ci & ecsへのデプロイ
iwata jaws-ug
IoT 時代に資する 「ものグラミング」教育のための 授業開発と実践
IoT 時代に資する 「ものグラミング」教育のための 授業開発と実践
Kazutaka Nakamura
SORACOM UG 信州 #3 | About SORACOM & Updates
SORACOM UG 信州 #3 | About SORACOM & Updates
SORACOM,INC
オムロン環境センサ with isaax IoTシステムを爆速実装する
オムロン環境センサ with isaax IoTシステムを爆速実装する
Tomoyuki Sugita
Introduction to NetOpsCoding
Introduction to NetOpsCoding
Taiji Tsuchiya
20210824 Pico Session at CEDEC2021 (新)
20210824 Pico Session at CEDEC2021 (新)
Miyu Nishikawa
BLEラジコン基板でIoTしてみた
BLEラジコン基板でIoTしてみた
Bizan Nishimura
Linebotを作ろう
Linebotを作ろう
Shinsuke Matsuda
第29回八子クラウド座談会(当日討議メモ付き) 20181215
第29回八子クラウド座談会(当日討議メモ付き) 20181215
知礼 八子
WWCT ラズパイ Bluemix 講習資料
WWCT ラズパイ Bluemix 講習資料
Masaya Fujita
僕は上スワイプでBottomSheetを出したかっただけなんだ
僕は上スワイプでBottomSheetを出したかっただけなんだ
Takao Sumitomo
sharedUserIdを使った俺得開発ツールの作り方
sharedUserIdを使った俺得開発ツールの作り方
Takao Sumitomo
More Related Content
Similar to CIのビルドを通知する仕組みをAndroidとFirestoreで作った話
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
Hyperleger Tokyo Meetup
Deep Learning Lab: DIMo & Chainer
Deep Learning Lab: DIMo & Chainer
Preferred Networks
Computex Taipei 2016 Report
Computex Taipei 2016 Report
iot_nifty
Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方
Takahiro Fujiwara
SIerによるSIerのためのRaspberry Pi 入門
SIerによるSIerのためのRaspberry Pi 入門
catmoney
Rubyでオリジナルプログラムをつくろう
Rubyでオリジナルプログラムをつくろう
K K
GitHub Actionsを使ってAPI外部公開時の作業を自動化した話
GitHub Actionsを使ってAPI外部公開時の作業を自動化した話
KainumaRyo
映像解析IoTプラットフォーム SCORERの紹介
映像解析IoTプラットフォーム SCORERの紹介
Hideaki Suzuki
IBM Blluemix を Pepper とつないでみよう
IBM Blluemix を Pepper とつないでみよう
Takuji Kawata
Getting Started with Graph Database with Python
Getting Started with Graph Database with Python
ロフト くん
Gitlab ci & ecsへのデプロイ
Gitlab ci & ecsへのデプロイ
iwata jaws-ug
IoT 時代に資する 「ものグラミング」教育のための 授業開発と実践
IoT 時代に資する 「ものグラミング」教育のための 授業開発と実践
Kazutaka Nakamura
SORACOM UG 信州 #3 | About SORACOM & Updates
SORACOM UG 信州 #3 | About SORACOM & Updates
SORACOM,INC
オムロン環境センサ with isaax IoTシステムを爆速実装する
オムロン環境センサ with isaax IoTシステムを爆速実装する
Tomoyuki Sugita
Introduction to NetOpsCoding
Introduction to NetOpsCoding
Taiji Tsuchiya
20210824 Pico Session at CEDEC2021 (新)
20210824 Pico Session at CEDEC2021 (新)
Miyu Nishikawa
BLEラジコン基板でIoTしてみた
BLEラジコン基板でIoTしてみた
Bizan Nishimura
Linebotを作ろう
Linebotを作ろう
Shinsuke Matsuda
第29回八子クラウド座談会(当日討議メモ付き) 20181215
第29回八子クラウド座談会(当日討議メモ付き) 20181215
知礼 八子
WWCT ラズパイ Bluemix 講習資料
WWCT ラズパイ Bluemix 講習資料
Masaya Fujita
Similar to CIのビルドを通知する仕組みをAndroidとFirestoreで作った話
(20)
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
Deep Learning Lab: DIMo & Chainer
Deep Learning Lab: DIMo & Chainer
Computex Taipei 2016 Report
Computex Taipei 2016 Report
Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方
SIerによるSIerのためのRaspberry Pi 入門
SIerによるSIerのためのRaspberry Pi 入門
Rubyでオリジナルプログラムをつくろう
Rubyでオリジナルプログラムをつくろう
GitHub Actionsを使ってAPI外部公開時の作業を自動化した話
GitHub Actionsを使ってAPI外部公開時の作業を自動化した話
映像解析IoTプラットフォーム SCORERの紹介
映像解析IoTプラットフォーム SCORERの紹介
IBM Blluemix を Pepper とつないでみよう
IBM Blluemix を Pepper とつないでみよう
Getting Started with Graph Database with Python
Getting Started with Graph Database with Python
Gitlab ci & ecsへのデプロイ
Gitlab ci & ecsへのデプロイ
IoT 時代に資する 「ものグラミング」教育のための 授業開発と実践
IoT 時代に資する 「ものグラミング」教育のための 授業開発と実践
SORACOM UG 信州 #3 | About SORACOM & Updates
SORACOM UG 信州 #3 | About SORACOM & Updates
オムロン環境センサ with isaax IoTシステムを爆速実装する
オムロン環境センサ with isaax IoTシステムを爆速実装する
Introduction to NetOpsCoding
Introduction to NetOpsCoding
20210824 Pico Session at CEDEC2021 (新)
20210824 Pico Session at CEDEC2021 (新)
BLEラジコン基板でIoTしてみた
BLEラジコン基板でIoTしてみた
Linebotを作ろう
Linebotを作ろう
第29回八子クラウド座談会(当日討議メモ付き) 20181215
第29回八子クラウド座談会(当日討議メモ付き) 20181215
WWCT ラズパイ Bluemix 講習資料
WWCT ラズパイ Bluemix 講習資料
More from Takao Sumitomo
僕は上スワイプでBottomSheetを出したかっただけなんだ
僕は上スワイプでBottomSheetを出したかっただけなんだ
Takao Sumitomo
sharedUserIdを使った俺得開発ツールの作り方
sharedUserIdを使った俺得開発ツールの作り方
Takao Sumitomo
Camera API 1と2が混在するプロダクトの開発で 泣いたこととそのワークアラウンド
Camera API 1と2が混在するプロダクトの開発で 泣いたこととそのワークアラウンド
Takao Sumitomo
高速でトライ&エラーを するために気をつけてること
高速でトライ&エラーを するために気をつけてること
Takao Sumitomo
Maker Faire Bay Areaに行きたかったのでGoogle I/Oに行ってきた
Maker Faire Bay Areaに行きたかったのでGoogle I/Oに行ってきた
Takao Sumitomo
Viewを動的に変化させるアプローチ
Viewを動的に変化させるアプローチ
Takao Sumitomo
プロダクトを育てるのにGoogleのサービスが助けてくれること
プロダクトを育てるのにGoogleのサービスが助けてくれること
Takao Sumitomo
AdapterToolboxでRecyclerViewを楽にする
AdapterToolboxでRecyclerViewを楽にする
Takao Sumitomo
エンジニアがプロダクト育成を始めるまでにやったこと
エンジニアがプロダクト育成を始めるまでにやったこと
Takao Sumitomo
Wantedlyのテスト事情
Wantedlyのテスト事情
Takao Sumitomo
用途に合わせたアニメーションの実装方法
用途に合わせたアニメーションの実装方法
Takao Sumitomo
Uml速習会
Uml速習会
Takao Sumitomo
potatotips (iOS/Android開発Tips共有会) 第19回 資料
potatotips (iOS/Android開発Tips共有会) 第19回 資料
Takao Sumitomo
SQLiteDatabaseを無理矢理覗く
SQLiteDatabaseを無理矢理覗く
Takao Sumitomo
開発を効率的に進めるられるまでの道程
開発を効率的に進めるられるまでの道程
Takao Sumitomo
テストがあればなんとかなる〜効率化までの道程〜
テストがあればなんとかなる〜効率化までの道程〜
Takao Sumitomo
勉強会資料 データ構造とアルゴリズム
勉強会資料 データ構造とアルゴリズム
Takao Sumitomo
勉強会資料 Uml概要
勉強会資料 Uml概要
Takao Sumitomo
Firefox OSの何が嬉しいか
Firefox OSの何が嬉しいか
Takao Sumitomo
HTML5でFirefox OSアプリを作ろう
HTML5でFirefox OSアプリを作ろう
Takao Sumitomo
More from Takao Sumitomo
(20)
僕は上スワイプでBottomSheetを出したかっただけなんだ
僕は上スワイプでBottomSheetを出したかっただけなんだ
sharedUserIdを使った俺得開発ツールの作り方
sharedUserIdを使った俺得開発ツールの作り方
Camera API 1と2が混在するプロダクトの開発で 泣いたこととそのワークアラウンド
Camera API 1と2が混在するプロダクトの開発で 泣いたこととそのワークアラウンド
高速でトライ&エラーを するために気をつけてること
高速でトライ&エラーを するために気をつけてること
Maker Faire Bay Areaに行きたかったのでGoogle I/Oに行ってきた
Maker Faire Bay Areaに行きたかったのでGoogle I/Oに行ってきた
Viewを動的に変化させるアプローチ
Viewを動的に変化させるアプローチ
プロダクトを育てるのにGoogleのサービスが助けてくれること
プロダクトを育てるのにGoogleのサービスが助けてくれること
AdapterToolboxでRecyclerViewを楽にする
AdapterToolboxでRecyclerViewを楽にする
エンジニアがプロダクト育成を始めるまでにやったこと
エンジニアがプロダクト育成を始めるまでにやったこと
Wantedlyのテスト事情
Wantedlyのテスト事情
用途に合わせたアニメーションの実装方法
用途に合わせたアニメーションの実装方法
Uml速習会
Uml速習会
potatotips (iOS/Android開発Tips共有会) 第19回 資料
potatotips (iOS/Android開発Tips共有会) 第19回 資料
SQLiteDatabaseを無理矢理覗く
SQLiteDatabaseを無理矢理覗く
開発を効率的に進めるられるまでの道程
開発を効率的に進めるられるまでの道程
テストがあればなんとかなる〜効率化までの道程〜
テストがあればなんとかなる〜効率化までの道程〜
勉強会資料 データ構造とアルゴリズム
勉強会資料 データ構造とアルゴリズム
勉強会資料 Uml概要
勉強会資料 Uml概要
Firefox OSの何が嬉しいか
Firefox OSの何が嬉しいか
HTML5でFirefox OSアプリを作ろう
HTML5でFirefox OSアプリを作ろう
Recently uploaded
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
Recently uploaded
(12)
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
CIのビルドを通知する仕組みをAndroidとFirestoreで作った話
1.
2018-06-26 shibuya.apk #26
@cattaka_net CIのビルドを通知する仕組みを AndroidとFirestoreで作った話 Takao Sumitomo
2.
2018-06-26 shibuya.apk #26
@cattaka_net 自己紹介 ● 住友 孝郎(Takao Sumitomo) – Wantedly 所属 – Androidアプリを主に担当 – @cattaka_net ● Javaが好きです
3.
モチベーション
4.
最近だと皆さんCIを使ってると思います
5.
ビルドやテストの結果を 楽しく通知してほしい
6.
通知するデバイスを たくさん置けると楽しそう
7.
作りました
8.
アプリ名:Catbell Notifier
9.
使うもの M5Stack (ディスプレイやBLE付きマイコン) Raspberry PI 3 (Android
Things)
10.
今どきのCIサービスやGitHubは WebhookでURLが叩ける
11.
こんな感じの仕組み
12.
WebhookでCloud Functionを叩く
13.
Cloud Functionは Firestoreにデータを書き込む
14.
AndroidアプリがFirestoreをオブザーブして
15.
AndroidからペリフェラルへBLEで通信
16.
ペリフェラルは光って知らせる
17.
作り方
18.
Raspberry PI 3
+ ディスプレイ
19.
Android ThingsをSDカードに焼く (実は普通のAndroidでも可)
20.
APKをダウンロードして adbでインストールする
21.
いろいろ設定する
22.
WebhookのURLが生成される
23.
URLを叩くと、、、表示が更新される
24.
ディスプレイに移すとこんな感じ
25.
これだけだと寂しい、、、
26.
M5Stackをペリフェラルにしよう BLEで通信
27.
ファームウェアはArduino IDEで書き込む
28.
まだ寂しい、、、
29.
LEDを光らせよう
30.
適当に配線して
31.
フラットケーブルを作る
32.
繋いで動作確認
33.
筐体もBlenderでガッと設計する
34.
筐体を3Dプリンタで印刷する
35.
サンドペーパー、パテ、サーフェイサーを 駆使して表面を整える
36.
塗装して
37.
組み立てる
38.
筐体ができた!
39.
まだ、なんか足りない、、、
40.
フィギュアも3Dプリンタで印刷する https://github.com/StickmanVentures/go-gopher-model
41.
サンドペーパー、パテ、サーフェイサーを 駆使して表面を整える
42.
シリコンゴムで型を取って
43.
透明のレジンでキャストして
44.
固定用のピンを刺して
45.
筐体に乗せて完成
46.
光るとこんな感じ
47.
簡単でしょ
48.
オフィスに5、6台置いてます
49.
作った感想
50.
Firebase Authentication、楽
51.
FirebaseUI-Android、楽
52.
Firebase Cloud Firestore、楽
53.
AndroidのBLE、 よく謎のエラーで通信できなくなる (コードの微調整でマシにはなったけど)
54.
運用した感想
55.
別チームの誰が何をしてるか フンワリわかる
56.
サーバーのデプロイの通知にも使える
57.
ずっと赤く光ってる(エラー)と心配になる
58.
そのブランチが青く光る(成功)と ホッとする
59.
楽しい!!! (' '
)✌ ω ✌ 三✌(' ')ω ✌三( ' ')✌ ω ✌
60.
魔改造されたバージョン
61.
おわりに
62.
日本語はブログに書いてます https://wscat.cattaka.net/2018/06/cicatbell-notifier.html
63.
GitHubに公開してます https://github.com/cattaka/CatbellNotifier
64.
65.
Javaが好きです
66.
2018-06-26 shibuya.apk #26
@cattaka_net ご清聴ありがとうございました
Download now