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
Play with Android Things
Search
shanonim
February 18, 2019
Technology
6.4k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Play with Android Things
2019.02.18
Cookpad.apk #2
https://cookpad.connpass.com/event/117054/
shanonim
February 18, 2019
More Decks by shanonim
See All by shanonim
実践 Glass EE2 向けアプリ開発 / Practical Glass EE2 app development
shanonim
0
340
What's "Material You"
shanonim
0
440
新規事業のIoTプロダクトをプロトタイピングする技術 / IoT product prototyping in cookpad mart
shanonim
0
290
IoTで美味しい漬け物を作りたい v2 / make good pickles with IoT v2
shanonim
1
530
アルコールモニタリングIoT / Alcohol monitoring IoT
shanonim
0
710
Android Things Now
shanonim
1
680
Kotlin初心者向けハンズオン #3 / Kotlin Hands-on for Beginners
shanonim
2
390
UI模写のすゝめ / Encouragement of UI drawing
shanonim
3
2.5k
食卓を支える技術 ~Oisixのアプリ開発~ / App Development in Oisix
shanonim
0
1.5k
Other Decks in Technology
See All in Technology
検証フェーズはAIの回答を判断するための学習機会
toru_kubota
2
530
組み立てて楽しむ AWS Blocks 入門
kmiya84377
0
220
AIがコードを書く時代に、エンジニアは何で自分の価値を証明するのか / In an era where AI writes code how do engineers prove their value
carta_engineering
0
340
データ品質を壊しながらSnowflakeのAIに分析させてみた
kawanago
0
540
あなたの知らないAmazon VPC Route Server/Amazon VPC Route Server you don't know about
masakiokuda
2
230
AI時代のAPI開発を加速する品質ガードレール / API Quality Guardrails in the AI Era
yokawasa
0
160
AI時代だからこそ推したい!Gitコマンド再入門
munakata
0
160
Claude Code本は、どのように執筆チームで書かれたか
oikon48
0
330
無理せず続ける、子育てエンジニアの学び
codmoninc
PRO
0
440
3つのアプローチで目指す チームを強くするAI駆動開発
thkt
0
130
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
230
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
290
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
920
[SF Ruby Conf 2025] Rails X
palkan
3
1.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Fireside Chat
paigeccino
43
4.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
Ruling the World: When Life Gets Gamed
codingconduct
0
390
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Visualization
eitanlees
153
17k
Site-Speed That Sticks
csswizardry
13
1.6k
Between Models and Reality
mayunak
4
490
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
440
Prompt Engineering for Job Search
mfonobong
0
490
Transcript
"OESPJE5IJOHT0WFSWJFX $PPLQBEBQL !TIBOPOJN
ΫοΫύουגࣜձࣾങࣄۀ෦ ࣰݪ߂ޫ !TIBOPOJN "OESPJEJ04*P51SPUPUZQJOH
None
ϚΠίϯ .4UBDL Ͱ*P5ϓϩτλΠϐϯάΛͨ͠Γ͍ͯ͠·͢
w ʹ(PPHMF͕ϦϦʔεͨ͠*P5ػث͚ͷϓϥοτϑΥʔϜ w 3BTQCFSSZ1JͷϛχίϯϐϡʔλͰ"OESPJE͕ಈ͘ w ௨ৗͷ"OESPJEΞϓϦͱ΄΅มΘΒͳ͍։ൃମݧ w ΈࠐΈͷΞϓϦέʔγϣϯΛର w ֤छηϯαʔΛࣗ༝ʹ͑Δ
w Ϟμϯͳٕज़Λαϙʔτ w FHσʔλੳʹ'JSFCBTF($1Λ͏
w ϦϦʔε w ݄WFSTJPOϦϦʔε w ݄$MPVE*P5$PSFϥΠϒϥϦϦϦʔε
None
(JWFOUIFTVDDFTTFTXFIBWFTFFOXJUIPVS QBSUOFSTJOTNBSUTQFBLFSTBOETNBSUEJTQMBZT XFBSFSFGPDVTJOH"OESPJE5IJOHTBTB QMBUGPSNGPS0&.QBSUOFSTUPCVJMEEFWJDFTJO UIPTFDBUFHPSJFTNPWJOHGPSXBSE
None
None
None
None
EFWFMPQFSTDBODSFBUFOFXCVJMET BOEQVTIBQQVQEBUFTGPSVQUP EFWJDFTGPSOPODPNNFSDJBMVTF
1SPEVDUJPOಋೖͷເ͕ઈͨΕͨࠓɺ "OESPJE5IJOHTͷ͍Έͪ ύʔιφϧϢʔε͔͠ͳ͍
ઌि·Ͱͷ"OESPJE5IJOHT
ϋʔυΣΞ 1SPEVDUJPOQMBUGPSNT %FWFMPQNFOUQMBUGPSNT
1SPEVDUJPOQMBUGPSNT %FWFMPQNFOUQMBUGPSNT ϓϩτλΠϐϯά։ൃ ݕূ 1SPEVDUJPO4P.TBSFDFSUJpFE CZ(PPHMFUPNFFUUIFTFDVSJUZSFRVJSFNFOUT %FQMPZ 05"0WFS5IF"JS
ϋʔυΣΞ (2019.2.12 ~) 1SPEVDUJPOQMBUGPSNT %FWFMPQNFOUQMBUGPSNT XJMMOPUCFNBEFBWBJMBCMFUISPVHIUIFQVCMJDEFWFMPQFSQMBUGPSN
w 1SPEVDUJPOQMBUGPSNTͷσόΠε͕͑ͳ͘ͳ͚ͬͨͩ w %FWFMPQNFOUQMBUGPSNTͷσόΠεϥζύΠͱ/911JDPͷαϙʔτੜ͖͍ͯΔʂ ϙΠϯτ
NBLFTPNFUIJOH
"OESPJE5IJOHT0WFSWJFX $PPLQBEBQL !TIBOPOJN
1MBZXJUI"OESPJE5IJOHT $PPLQBEBQL !TIBOPOJN
/911JDPJ.9%͘ΜΛ͍·͢
w (PPHMF*0Ͱ͞Εͨ4UBSUFS,JUʹೖ͍ͬͯΔ։ൃϘʔυ w "OESPJE5IJOHT4UBSUFS,JU։෧ͷّIUUQTIBOPOJNIBUFOBCMPHDPNFOUSZ /911JDPJ.9%
"OESPJE5IJOHTͰԹௐཧثΛ࡞Δ
Թௐཧ w ਅۭௐཧ๏ w ʮম͘ʯʮৠ͢ʯʮࣽΔʯʹ͙࣍ɺୈ࢛ͷௐཧ๏ͱݺΕΔɻ w ੜ͋Δ͍ম͖Λ͚ͭΔͳͲͷԼॲཧΛࢪͨ͠৯ࡐͱௐຯӷΛϑΟϧϜାʹೖΕͯਅۭີ෧ ͠ɺ55ʢUFNQFSBUVSFUJNFʣཧͷग़དྷΔௐཧثͰࡐྉʹԠͨ࣌ؒ͡ͱԹઃఆΛͯ͠ௐཧ͞ ΕΔɻ w
ਅۭύοΫதͰௐཧɺௐຯ͕ߦΘΕΔͨΊࡐྉͷ෩ຯࢫຯΛಀͣ͞ۉҰʹௐཧ͢Δ͜ͱ͕Մ ೳͰ͋Δɻ 8JLJQFEJBΑΓ
࣮ͨ͠Թௐཧث w ࢢൢͷεϩʔΫοΧʔͷిݯΛίϯτϩʔϧͯ͠ɺৗʹҰఆͷԹଳΛอͭ w εϩʔΫοΧʔʹԹηϯαʔΛ࣮ w Թ͕ࢦఆͨ͠ԹΛ͑ͨΒˠεϩʔΫοΧʔͷిݯΛΔʢԹ͕Լ͕Δʣ w ٯʹԹ͕Լ͕Γ͗ͨ͢ΒˠεϩʔΫοΧʔͷిݯΛೖΕΔʢԹ͕࠶্ঢ͢Δʣ
/911JDPJ.9% (SPWF#BSPNFUFS4FOTPS #.1 εϩʔΫοΧʔ ܲ εϚʔτϓϥά )4 UFNQFSBUVSF 8FCIPPL TFOE0/0''FWFOU
None
None
ιϑτΣΞ TVQQPSUFECZ"OESPJE04 w ։ൃڥ w "OESPJE4UVEJP w *OUFMMJ+*%&" w ݴޠ
w +BWB w ,PUMJO
ηϯαʔ͔ΒσʔλΛऔಘ class MainActivity : Activity(), SensorEventListener { companion object {
private val TAG = MainActivity::class.java.simpleName } private val temperatureSensorDriver: Bmx280SensorDriver by lazy { Bmx280SensorDriver("I2C1") } private val sensorManager: SensorManager by lazy { getSystemService(Context.SENSOR_SERVICE) as SensorManager } private val dynamicSensorCallback = object : DynamicSensorCallback() { override fun onDynamicSensorConnected(sensor: Sensor) { if (sensor.type == Sensor.TYPE_AMBIENT_TEMPERATURE) { Log.i(TAG, "Temperature sensor connected") sensorManager.registerListener(this@MainActivity, sensor, SensorManager.SENSOR_DELAY_NORMAL) } } } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) sensorManager.registerDynamicSensorCallback(dynamicSensorCallback) temperatureSensorDriver.registerTemperatureSensor() } override fun onDestroy() { super.onDestroy() sensorManager.unregisterDynamicSensorCallback(dynamicSensorCallback) sensorManager.unregisterListener(this) temperatureSensorDriver.run { unregisterTemperatureSensor() close() } } override fun onSensorChanged(event: SensorEvent) { // event.values[0] } override fun onAccuracyChanged(sensor: Sensor, accuracy: Int) { Log.i(TAG, "sensor accuracy changed: $accuracy") } }
⚡εϚʔτϓϥά w 51-JOL)4 w 8J'Jଂ w *'555࿈ܞ w XFCIPPLୟ͚ͩ͘Ͱ0/0''੍ޚͰ͖Δ
·ͱΊ w OPODPNNFSDJBMVTFPOMZͰ͋Δ͕ɺ"OESPJEΤϯδχΞʹͱͬͯ։ൃ͍͢͠ϓϥοτϑΥʔ ϜʹมΘΒͳ͍ w Πν͔ΒΈࠐΈษڧ͢ΔΑΓϋʔυϧ͍ʢͱࢥ͏ʣ w 8FCͱͷ࿈ܞָ͕ͩͬͨΓɺN#BB4Λ؆୯ʹ͑ΔͷͰɺͪΌΜͱͨ͠*P5αʔϏε͕؆୯ʹ ࡞ΕΔ w
*0Ͱ෮׆ͯ͘͠ΕཔΉ