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
Android Wear
Search
Salim KAYABAŞI
October 17, 2014
Programming
1
290
Android Wear
• Basics of Android Wear
• Devices & User experience
• Before Development
• While Developing
Salim KAYABAŞI
October 17, 2014
Tweet
Share
More Decks by Salim KAYABAŞI
See All by Salim KAYABAŞI
Polymer 1.0 -recap
salimkayabasi
0
69
Hello Node
salimkayabasi
1
60
Other Decks in Programming
See All in Programming
ピラミッド、アイスクリームコーン、SMURF: 自動テストの最適バランスを求めて / Pyramid Ice-Cream-Cone and SMURF
twada
PRO
10
1.3k
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
[Do iOS '24] Ship your app on a Friday...and enjoy your weekend!
polpielladev
0
110
イベント駆動で成長して委員会
happymana
1
320
CSC509 Lecture 11
javiergs
PRO
0
180
聞き手から登壇者へ: RubyKaigi2024 LTでの初挑戦が 教えてくれた、可能性の星
mikik0
1
130
Arm移行タイムアタック
qnighy
0
330
Make Impossible States Impossibleを 意識してReactのPropsを設計しよう
ikumatadokoro
0
170
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
940
CSC509 Lecture 12
javiergs
PRO
0
160
Enabling DevOps and Team Topologies Through Architecture: Architecting for Fast Flow
cer
PRO
0
330
Featured
See All Featured
Fireside Chat
paigeccino
34
3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
The Language of Interfaces
destraynor
154
24k
10 Git Anti Patterns You Should be Aware of
lemiorhan
654
59k
Facilitating Awesome Meetings
lara
50
6.1k
Raft: Consensus for Rubyists
vanstee
136
6.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Code Review Best Practice
trishagee
64
17k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Building Adaptive Systems
keathley
38
2.3k
Faster Mobile Websites
deanohume
305
30k
Transcript
Android Wear @salimkayabasi +SalimKAYABAŞI
[email protected]
nodejstr.com gdgistanbul.com salimkayabasi.com github.com/salimkayabasi @salimkayabasi +SalimKAYABAŞI
Agenda • Basics of Android Wear • Devices & User
experience • Before Development • While Developing
Martin Cooper
Steve Jobs
None
• Less interruption, more connectivity • Extending interactions • What
you need, when you need • Informations that moves with you
None
• Voice actions • Quick replies • Less information •
All notifications will work natively
Pages Replies Stacks
None
Preparing • Required android version is 4.3 and above •
Lastest Google Play Services and Android Wear application • Internet connection over paired device • Android Studio > 0.8 • Gradle > 0.12 • Wearable support library
Remember • Lower battery and smallest screens • Notify when
if it is important • Show relevant actions • Content oriented • Micro interactions • Use your hardware (like heart rate monitor)
Do not • Miss the point • Need to go
beyond what phone can do • Games, Flashlight, Readers, Drawing
Google Now
Communications
Hardwares
Layouts ="@layout/rect_activity_wear" ="@layout/round_activity_wear"
Data Sharing PutDataMapRequest dataMap = PutDataMapRequest.create("/path-to-data"); dataMap.getDataMap().putInt(DATA_KEY, yourObject); PutDataRequest request
= dataMap.asPutDataRequest(); PendingResult<DataApi.DataItemResult> pendingResult = Wearable.DataApi .putDataItem(mGoogleApiClient, request); @Override public void onDataChanged(DataEventBuffer dataEvents) { for (DataEvent event : dataEvents) { if (event.getType() == DataEvent.TYPE_DELETED) { Log.d(TAG, "DataItem deleted: " + event.getDataItem().getUri()); } else if (event.getType() == DataEvent.TYPE_CHANGED) { Log.d(TAG, "DataItem changed: " + event.getDataItem().getUri()); } } }
Messages SendMessageResult result = Wearable.MessageApi.sendMessage( mGoogleApiClient, node, START_ACTIVITY_PATH, null).await(); if
(!result.getStatus().isSuccess()) { Log.e(TAG, "ERROR: failed to send Message: " + result.getStatus()); } @Override public void onMessageReceived(MessageEvent messageEvent) { if (messageEvent.getPath().equals(START_ACTIVITY_PATH)) { Intent startIntent = new Intent(this, MainActivity.class); startIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(startIntent); } }
Thanks Q&A