Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Let's make Photo Frame with Android Things
Search
Ryota Takemoto
March 22, 2017
Technology
2.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Let's make Photo Frame with Android Things
Story about development for photo frame with Android Things.
Ryota Takemoto
March 22, 2017
More Decks by Ryota Takemoto
See All by Ryota Takemoto
NEORT1周年の振り返りとこれからの話
r21nomi
0
1.5k
デジタルアートのプラットフォームを開発してる話
r21nomi
1
560
設計にみるAWA Androidアプリのこれまでとこれから
r21nomi
6
2.5k
How to notify Dataset changed for RecyclerView
r21nomi
2
1.7k
アプリのUX向上のためにAWAがやってきたこと
r21nomi
0
960
Advanced Shared Element Transition
r21nomi
4
3.2k
Other Decks in Technology
See All in Technology
空間オーディオで過去の 自分(ゴースト)と競うランニング 〜HealthKitのルートを足音に変える実装〜
nao_randd
0
140
AIに丸投げしないトイル削減 / Eliminating Toil Without Leaving It All to AI
kohbis
4
1.1k
Microsoft 365 Copilot chat -tekoälypalvelun tietosuojaongelmat
hponka
0
880
Claude Code本って、 読む必要あるの?
oikon48
2
440
[2026-09-11]SREは誰のもの?運用エンジニアが始める 「SRE領域への越境」とチームの進化の軌跡 〜Road to NEXT CRE
tosite
0
200
技術的負債から考える、AI時代のエンジニアリング投資 — ビズリーチの技術的負債と向き合った経験から、変更し続けられるソフトウェアを考える/ technical-debt-con2026
visional_engineering_and_design
1
860
AIを活用するために決めた "やらないこと" - 価値に注目する / Not betting on AI
soudai
PRO
1
490
GoにおけるFFIのこれまでとこれから
goccy
5
2.7k
DEFCON_CHV_CTF_Write-up.pdf
bata_24
0
150
AIネイティブプロダクトで顧客価値を最大化するプロダクトエンジニアとFDEの協働
righttouch
PRO
0
280
Snowflakeで実現する全社横断の顧客の声(VOC)分析・活用基盤@Snowflake World Tour Tokyo 2026
yuto16
0
210
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
1
1.2k
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
880
Marketing to machines
jonoalderson
1
5.8k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
Six Lessons from altMBA
skipperchong
29
4.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Skip the Path - Find Your Career Trail
mkilby
1
230
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
How to Talk to Developers About Accessibility
jct
2
540
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
490
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
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