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
320
1
Share
Android Wear
• Basics of Android Wear
• Devices & User experience
• Before Development
• While Developing
Salim KAYABAŞI
October 17, 2014
More Decks by Salim KAYABAŞI
See All by Salim KAYABAŞI
Polymer 1.0 -recap
salimkayabasi
0
89
Hello Node
salimkayabasi
1
82
Other Decks in Programming
See All in Programming
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
3
440
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
4
2.8k
Java 21/25 Virtual Threads 소개
debop
0
330
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
250
AWS re:Invent 2025の少し振り返り + DevOps AgentとBacklogを連携させてみた
satoshi256kbyte
2
150
Coding as Prompting Since 2025
ragingwind
0
720
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
190
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
180
Everything Claude Code OSS詳細 — 5層構造の中身と導入方法
targe
0
160
SkillがSkillを生む:QA観点出しを自動化した
sontixyou
5
2.9k
Mastering Event Sourcing: Your Parents Holidayed in Yugoslavia
super_marek
0
150
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
810
Featured
See All Featured
Abbi's Birthday
coloredviolet
2
6.4k
Between Models and Reality
mayunak
3
260
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Prompt Engineering for Job Search
mfonobong
0
250
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
240
From π to Pie charts
rasagy
0
160
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9k
Designing Powerful Visuals for Engaging Learning
tmiket
1
330
[SF Ruby Conf 2025] Rails X
palkan
2
920
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.4k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
390
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