Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Let's make Photo Frame with Android Things
Search
Ryota Takemoto
March 22, 2017
Technology
0
2.5k
Let's make Photo Frame with Android Things
Story about development for photo frame with Android Things.
Ryota Takemoto
March 22, 2017
Tweet
Share
More Decks by Ryota Takemoto
See All by Ryota Takemoto
NEORT1周年の振り返りとこれからの話
r21nomi
0
1.4k
デジタルアートのプラットフォームを開発してる話
r21nomi
1
540
設計にみるAWA Androidアプリのこれまでとこれから
r21nomi
6
2.4k
How to notify Dataset changed for RecyclerView
r21nomi
2
1.6k
アプリのUX向上のためにAWAがやってきたこと
r21nomi
0
920
Advanced Shared Element Transition
r21nomi
4
2.9k
Other Decks in Technology
See All in Technology
翻訳・対話・越境で強いチームワークを作ろう! / Building Strong Teamwork through Interpretation, Dialogue, and Border-Crossing
ar_tama
2
600
【保存版】「ガチャ」からの脱却:Gemini × Veoで作る、意図を反映するAI動画制作ワークフロー
nekoailab
0
120
AI エージェント活用のベストプラクティスと今後の課題
asei
2
410
なぜフロントエンド技術を追うのか?なぜカンファレンスに参加するのか?
sakito
3
740
ローカルLLM基礎知識 / local LLM basics 2025
kishida
25
11k
一億総業務改善を支える社内AIエージェント基盤の要諦
yukukotani
7
2.1k
Introduction to Bill One Development Engineer
sansan33
PRO
0
320
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
45k
Pandocでmd→pptx便利すぎワロタwww
meow_noisy
2
1.1k
20251127 BigQueryリモート関数で作る、お手軽AIバッチ実行環境
daimatz
0
350
TypeScript 6.0で非推奨化されるオプションたち
uhyo
15
5.6k
Digitization部 紹介資料
sansan33
PRO
1
6k
Featured
See All Featured
Site-Speed That Sticks
csswizardry
13
970
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
Six Lessons from altMBA
skipperchong
29
4.1k
Become a Pro
speakerdeck
PRO
30
5.6k
BBQ
matthewcrist
89
9.9k
Faster Mobile Websites
deanohume
310
31k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
The Invisible Side of Design
smashingmag
302
51k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Designing Experiences People Love
moore
142
24k
Unsuck your backbone
ammeep
671
58k
Transcript
Let’s make Photo Frame with Android Things Ryota Takemoto 3ZPUB5BLFNPUP
!SOPNJ SOPNJ ݩ ɹ ྄ ଠ 5BLFNPUPɹ3ZPUB +PJO$ZCFS"HFOU 'SPOUFOE%FWFMPQFS
ʙ "OESPJEEFWFMPQFS!"8" ʢχΠϊϛʣ
Android Things
None
What I made
None
None
Setup
IUUQTEFWFMPQFSBOESPJEDPNUIJOHT IBSEXBSFSBTQCFSSZQJIUNM
Build on
$ adb connect Android.local $ ./gradlew :app:assembleDebug
Develop App
API Using
Getting AccessToken with OAuth on
Getting AccessToken with OAuth on
webView.loadUrl(url); Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); startActivity(intent);
Using Realtime Database
IUUQTSJHHBSPPDP[BBOESPJEUIJOHTFMFDUSJDJUZNPOJUPSJOHBQQ Save Get AccessToken
Setup Firebase IUUQTpSFCBTFHPPHMFDPNEPDTBOESPJETFUVQ
Realtime Database rule
Realtime Database rule for development
FirebaseDatabase database = FirebaseDatabase.getInstance(); DatabaseReference dbRef = database.getReference(“access_token"); dbRef.setValue(“xxx-yyy-zzz”); Save
AccessToken app module
“xxx-yyy-zzz” Saved successfully!!
Get AccessToken things module dbRef.addValueEventListener(new ValueEventListener() { @Override public void
onDataChange(DataSnapshot dataSnapshot) { String value = dataSnapshot.getValue(String.class); } @Override public void onCancelled(DatabaseError error) { // cancelled } });
Get AccessToken things module dbRef.addValueEventListener(new ValueEventListener() { @Override public void
onDataChange(DataSnapshot dataSnapshot) { String value = dataSnapshot.getValue(String.class); } @Override public void onCancelled(DatabaseError error) { // cancelled } }); value(AccessToken) is “xxx-yyy-zzz”
Fetch contents app things
IUUQTHJUIVCDPNSOPNJQJOCPBSE Demo App
Thank you !SOPNJ SOPNJ