SlideShare a Scribd company logo
Challenges in Android Wear
Application Development
ICWE 2015
Jukka Ahola
VTT Technical Research Centre of Finland
208/07/2015
The Story
 Social messaging application for Android Wear watch.
 Utilizes speech-to-text feature, combined with time and place.
 Other users receive messages near them.
308/07/2015
The Application
 Watch Face application.
 BLE connected companion
application in Android phone.
 Web Service for message
storage and search functionality.
408/07/2015
Development Issues
 Buttons do not work in Watch Face applications.
 Companion application in mobile phone is required for web service calls.
 Language preference cannot be selected in Android Wear application.
508/07/2015
Workaround: Always-on Wear Application
styles.xml:
<style name="AppTheme" parent="@android:style/Theme.DeviceDefault">
<item name="android:windowSwipeToDismiss">false</item>
</style>
round_activity_main.xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" tools:context=".MainActivity" tools:deviceIds="wear_round"
android:keepScreenOn="true">
MainActivity.java:
private DismissOverlayView mDismissOverlay;
private GestureDetector mDetector;
@Override
protected void onCreate(Bundle savedInstanceState) {
…
mDismissOverlay = (DismissOverlayView) findViewById(R.id.dismiss_overlay);
mDismissOverlay.setIntroText("QUIT APPLICATION");
mDismissOverlay.showIntroIfNecessary();
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
mDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() {
public void onLongPress(MotionEvent ev) {
mDismissOverlay.show();
}
});
}
@Override
public boolean onTouchEvent(MotionEvent event) {
return mDetector.onTouchEvent(event) || super.onTouchEvent(event);
}
• Buttons work.
• Needs to be started.
• Consumes battery.
608/07/2015
Android Wear and Wi-Fi Support?
 Limited to Android Wear watches supporting Wi-Fi.
 Do not work on Wi-Fi-networks requiring activation
(such as free airport wi-fi providers).
 If Wi-Fi is not available, you still have to delegate the web service
calls to the companion application through BLE communication.
Solution: seamless HttpURLConnection-class for Wear that utilizes
either direct Wi-Fi connectivity or network bridging through BLE-
connectivity.
708/07/2015
Language Support
 Still ignores the language preferences set by the Wear application.
 Difficulties mixing two languages in one sentence.
For example, spelling foreign names or street addresses.
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
Locale currentLocale = new Locale("fi_FI"); // Locale.ENGLISH;
String currentLanguage = "SUOMI"; // "ENGLISH";
intent.putExtra(RecognizerIntent.EXTRA_PROMPT, currentLanguage);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, currentLocale.getLanguage());
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE, currentLocale.getLanguage());
startActivityForResult(intent, SPEECH_REQUEST_CODE);
808/07/2015
THANK YOU
Jukka Ahola
VTT Technical Research Centre of Finland LTD
jukka.ahola@vtt.fi
+358 40 076 4010
http://www.vtt.fi
LinkedIn: https://www.linkedin.com/in/jukkaahola
908/07/2015
VTT creates business from
technology

More Related Content

More from icwe2015

(Linked Data Interfaces and Querying track) "SUMMA: A Common API for Linked D...
(Linked Data Interfaces and Querying track) "SUMMA: A Common API for Linked D...(Linked Data Interfaces and Querying track) "SUMMA: A Common API for Linked D...
(Linked Data Interfaces and Querying track) "SUMMA: A Common API for Linked D...icwe2015
 
(Linked Data Development and Exploitation track) "Generating the Semantic Sna...
(Linked Data Development and Exploitation track) "Generating the Semantic Sna...(Linked Data Development and Exploitation track) "Generating the Semantic Sna...
(Linked Data Development and Exploitation track) "Generating the Semantic Sna...icwe2015
 
(Industry track) "Interactive networks for digital cultural heritage collecti...
(Industry track) "Interactive networks for digital cultural heritage collecti...(Industry track) "Interactive networks for digital cultural heritage collecti...
(Industry track) "Interactive networks for digital cultural heritage collecti...icwe2015
 
(SoWeMine Workshop) "#nowplaying on #Spotify: Leveraging Spotify Information ...
(SoWeMine Workshop) "#nowplaying on #Spotify: Leveraging Spotify Information ...(SoWeMine Workshop) "#nowplaying on #Spotify: Leveraging Spotify Information ...
(SoWeMine Workshop) "#nowplaying on #Spotify: Leveraging Spotify Information ...icwe2015
 
(Mobile Web Applications track) "Mobile-IDM: A Design Method for Modeling the...
(Mobile Web Applications track) "Mobile-IDM: A Design Method for Modeling the...(Mobile Web Applications track) "Mobile-IDM: A Design Method for Modeling the...
(Mobile Web Applications track) "Mobile-IDM: A Design Method for Modeling the...icwe2015
 
(Linked Data Development and Exploitation track) "Curtains Up! Lights, Camera...
(Linked Data Development and Exploitation track) "Curtains Up! Lights, Camera...(Linked Data Development and Exploitation track) "Curtains Up! Lights, Camera...
(Linked Data Development and Exploitation track) "Curtains Up! Lights, Camera...icwe2015
 
(Mobile Web Applications track) "Profiling User Activities with Minimal Traff...
(Mobile Web Applications track) "Profiling User Activities with Minimal Traff...(Mobile Web Applications track) "Profiling User Activities with Minimal Traff...
(Mobile Web Applications track) "Profiling User Activities with Minimal Traff...icwe2015
 
(SoWeMine Workshop) "Retrieving Relevant and Interesting Tweets during Live T...
(SoWeMine Workshop) "Retrieving Relevant and Interesting Tweets during Live T...(SoWeMine Workshop) "Retrieving Relevant and Interesting Tweets during Live T...
(SoWeMine Workshop) "Retrieving Relevant and Interesting Tweets during Live T...icwe2015
 
(NLPIT Workshop) (Keynote) Nathan Schneider - “Hacking a Way Through the Twit...
(NLPIT Workshop) (Keynote) Nathan Schneider - “Hacking a Way Through the Twit...(NLPIT Workshop) (Keynote) Nathan Schneider - “Hacking a Way Through the Twit...
(NLPIT Workshop) (Keynote) Nathan Schneider - “Hacking a Way Through the Twit...icwe2015
 
(PEWET Workshop) (Keynote) Vincenzo De Florio - “Fractally-organized Connecti...
(PEWET Workshop) (Keynote) Vincenzo De Florio - “Fractally-organized Connecti...(PEWET Workshop) (Keynote) Vincenzo De Florio - “Fractally-organized Connecti...
(PEWET Workshop) (Keynote) Vincenzo De Florio - “Fractally-organized Connecti...icwe2015
 
(Web Application Design track) "Liquid Stream Processing across Web Browsers ...
(Web Application Design track) "Liquid Stream Processing across Web Browsers ...(Web Application Design track) "Liquid Stream Processing across Web Browsers ...
(Web Application Design track) "Liquid Stream Processing across Web Browsers ...icwe2015
 
(Web Composition and Mashups track) "REST Web Service Description for Graph-B...
(Web Composition and Mashups track) "REST Web Service Description for Graph-B...(Web Composition and Mashups track) "REST Web Service Description for Graph-B...
(Web Composition and Mashups track) "REST Web Service Description for Graph-B...icwe2015
 
(Semantic Web Technologies and Applications track) "A Quantitative Comparison...
(Semantic Web Technologies and Applications track) "A Quantitative Comparison...(Semantic Web Technologies and Applications track) "A Quantitative Comparison...
(Semantic Web Technologies and Applications track) "A Quantitative Comparison...icwe2015
 
(Keynote) Peter Mika - “Making the Web Searchable”
(Keynote) Peter Mika - “Making the Web Searchable”(Keynote) Peter Mika - “Making the Web Searchable”
(Keynote) Peter Mika - “Making the Web Searchable”icwe2015
 
(Keynote) Mike Thelwall - “Sentiment Strength Detection for Social Media Text...
(Keynote) Mike Thelwall - “Sentiment Strength Detection for Social Media Text...(Keynote) Mike Thelwall - “Sentiment Strength Detection for Social Media Text...
(Keynote) Mike Thelwall - “Sentiment Strength Detection for Social Media Text...icwe2015
 

More from icwe2015 (15)

(Linked Data Interfaces and Querying track) "SUMMA: A Common API for Linked D...
(Linked Data Interfaces and Querying track) "SUMMA: A Common API for Linked D...(Linked Data Interfaces and Querying track) "SUMMA: A Common API for Linked D...
(Linked Data Interfaces and Querying track) "SUMMA: A Common API for Linked D...
 
(Linked Data Development and Exploitation track) "Generating the Semantic Sna...
(Linked Data Development and Exploitation track) "Generating the Semantic Sna...(Linked Data Development and Exploitation track) "Generating the Semantic Sna...
(Linked Data Development and Exploitation track) "Generating the Semantic Sna...
 
(Industry track) "Interactive networks for digital cultural heritage collecti...
(Industry track) "Interactive networks for digital cultural heritage collecti...(Industry track) "Interactive networks for digital cultural heritage collecti...
(Industry track) "Interactive networks for digital cultural heritage collecti...
 
(SoWeMine Workshop) "#nowplaying on #Spotify: Leveraging Spotify Information ...
(SoWeMine Workshop) "#nowplaying on #Spotify: Leveraging Spotify Information ...(SoWeMine Workshop) "#nowplaying on #Spotify: Leveraging Spotify Information ...
(SoWeMine Workshop) "#nowplaying on #Spotify: Leveraging Spotify Information ...
 
(Mobile Web Applications track) "Mobile-IDM: A Design Method for Modeling the...
(Mobile Web Applications track) "Mobile-IDM: A Design Method for Modeling the...(Mobile Web Applications track) "Mobile-IDM: A Design Method for Modeling the...
(Mobile Web Applications track) "Mobile-IDM: A Design Method for Modeling the...
 
(Linked Data Development and Exploitation track) "Curtains Up! Lights, Camera...
(Linked Data Development and Exploitation track) "Curtains Up! Lights, Camera...(Linked Data Development and Exploitation track) "Curtains Up! Lights, Camera...
(Linked Data Development and Exploitation track) "Curtains Up! Lights, Camera...
 
(Mobile Web Applications track) "Profiling User Activities with Minimal Traff...
(Mobile Web Applications track) "Profiling User Activities with Minimal Traff...(Mobile Web Applications track) "Profiling User Activities with Minimal Traff...
(Mobile Web Applications track) "Profiling User Activities with Minimal Traff...
 
(SoWeMine Workshop) "Retrieving Relevant and Interesting Tweets during Live T...
(SoWeMine Workshop) "Retrieving Relevant and Interesting Tweets during Live T...(SoWeMine Workshop) "Retrieving Relevant and Interesting Tweets during Live T...
(SoWeMine Workshop) "Retrieving Relevant and Interesting Tweets during Live T...
 
(NLPIT Workshop) (Keynote) Nathan Schneider - “Hacking a Way Through the Twit...
(NLPIT Workshop) (Keynote) Nathan Schneider - “Hacking a Way Through the Twit...(NLPIT Workshop) (Keynote) Nathan Schneider - “Hacking a Way Through the Twit...
(NLPIT Workshop) (Keynote) Nathan Schneider - “Hacking a Way Through the Twit...
 
(PEWET Workshop) (Keynote) Vincenzo De Florio - “Fractally-organized Connecti...
(PEWET Workshop) (Keynote) Vincenzo De Florio - “Fractally-organized Connecti...(PEWET Workshop) (Keynote) Vincenzo De Florio - “Fractally-organized Connecti...
(PEWET Workshop) (Keynote) Vincenzo De Florio - “Fractally-organized Connecti...
 
(Web Application Design track) "Liquid Stream Processing across Web Browsers ...
(Web Application Design track) "Liquid Stream Processing across Web Browsers ...(Web Application Design track) "Liquid Stream Processing across Web Browsers ...
(Web Application Design track) "Liquid Stream Processing across Web Browsers ...
 
(Web Composition and Mashups track) "REST Web Service Description for Graph-B...
(Web Composition and Mashups track) "REST Web Service Description for Graph-B...(Web Composition and Mashups track) "REST Web Service Description for Graph-B...
(Web Composition and Mashups track) "REST Web Service Description for Graph-B...
 
(Semantic Web Technologies and Applications track) "A Quantitative Comparison...
(Semantic Web Technologies and Applications track) "A Quantitative Comparison...(Semantic Web Technologies and Applications track) "A Quantitative Comparison...
(Semantic Web Technologies and Applications track) "A Quantitative Comparison...
 
(Keynote) Peter Mika - “Making the Web Searchable”
(Keynote) Peter Mika - “Making the Web Searchable”(Keynote) Peter Mika - “Making the Web Searchable”
(Keynote) Peter Mika - “Making the Web Searchable”
 
(Keynote) Mike Thelwall - “Sentiment Strength Detection for Social Media Text...
(Keynote) Mike Thelwall - “Sentiment Strength Detection for Social Media Text...(Keynote) Mike Thelwall - “Sentiment Strength Detection for Social Media Text...
(Keynote) Mike Thelwall - “Sentiment Strength Detection for Social Media Text...
 

Recently uploaded

audience research (emma) 1.pptxkkkkkkkkkkkkkkkkk
audience research (emma) 1.pptxkkkkkkkkkkkkkkkkkaudience research (emma) 1.pptxkkkkkkkkkkkkkkkkk
audience research (emma) 1.pptxkkkkkkkkkkkkkkkkklolsDocherty
 
Cyber Security Services Unveiled: Strategies to Secure Your Digital Presence
Cyber Security Services Unveiled: Strategies to Secure Your Digital PresenceCyber Security Services Unveiled: Strategies to Secure Your Digital Presence
Cyber Security Services Unveiled: Strategies to Secure Your Digital PresencePC Doctors NET
 
Article writing on excessive use of internet.pptx
Article writing on excessive use of internet.pptxArticle writing on excessive use of internet.pptx
Article writing on excessive use of internet.pptxabhinandnam9997
 
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesMulti-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesSanjeev Rampal
 
一比一原版UTS毕业证悉尼科技大学毕业证成绩单如何办理
一比一原版UTS毕业证悉尼科技大学毕业证成绩单如何办理一比一原版UTS毕业证悉尼科技大学毕业证成绩单如何办理
一比一原版UTS毕业证悉尼科技大学毕业证成绩单如何办理aagad
 
How Do I Begin the Linksys Velop Setup Process?
How Do I Begin the Linksys Velop Setup Process?How Do I Begin the Linksys Velop Setup Process?
How Do I Begin the Linksys Velop Setup Process?Linksys Velop Login
 
Pvtaan Social media marketing proposal.pdf
Pvtaan Social media marketing proposal.pdfPvtaan Social media marketing proposal.pdf
Pvtaan Social media marketing proposal.pdfPvtaan
 
Production 2024 sunderland culture final - Copy.pptx
Production 2024 sunderland culture final - Copy.pptxProduction 2024 sunderland culture final - Copy.pptx
Production 2024 sunderland culture final - Copy.pptxChloeMeadows1
 
The Use of AI in Indonesia Election 2024: A Case Study
The Use of AI in Indonesia Election 2024: A Case StudyThe Use of AI in Indonesia Election 2024: A Case Study
The Use of AI in Indonesia Election 2024: A Case StudyDamar Juniarto
 
Premier Mobile App Development Agency in USA.pdf
Premier Mobile App Development Agency in USA.pdfPremier Mobile App Development Agency in USA.pdf
Premier Mobile App Development Agency in USA.pdfappinfoedgeca
 
Case study on merger of Vodafone and Idea (VI).pptx
Case study on merger of Vodafone and Idea (VI).pptxCase study on merger of Vodafone and Idea (VI).pptx
Case study on merger of Vodafone and Idea (VI).pptxAnkitscribd
 
Statistical Analysis of DNS Latencies.pdf
Statistical Analysis of DNS Latencies.pdfStatistical Analysis of DNS Latencies.pdf
Statistical Analysis of DNS Latencies.pdfOndejSur
 
Bug Bounty Blueprint : A Beginner's Guide
Bug Bounty Blueprint : A Beginner's GuideBug Bounty Blueprint : A Beginner's Guide
Bug Bounty Blueprint : A Beginner's GuideVarun Mithran
 
ER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAEER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAEHimani415946
 

Recently uploaded (14)

audience research (emma) 1.pptxkkkkkkkkkkkkkkkkk
audience research (emma) 1.pptxkkkkkkkkkkkkkkkkkaudience research (emma) 1.pptxkkkkkkkkkkkkkkkkk
audience research (emma) 1.pptxkkkkkkkkkkkkkkkkk
 
Cyber Security Services Unveiled: Strategies to Secure Your Digital Presence
Cyber Security Services Unveiled: Strategies to Secure Your Digital PresenceCyber Security Services Unveiled: Strategies to Secure Your Digital Presence
Cyber Security Services Unveiled: Strategies to Secure Your Digital Presence
 
Article writing on excessive use of internet.pptx
Article writing on excessive use of internet.pptxArticle writing on excessive use of internet.pptx
Article writing on excessive use of internet.pptx
 
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesMulti-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
 
一比一原版UTS毕业证悉尼科技大学毕业证成绩单如何办理
一比一原版UTS毕业证悉尼科技大学毕业证成绩单如何办理一比一原版UTS毕业证悉尼科技大学毕业证成绩单如何办理
一比一原版UTS毕业证悉尼科技大学毕业证成绩单如何办理
 
How Do I Begin the Linksys Velop Setup Process?
How Do I Begin the Linksys Velop Setup Process?How Do I Begin the Linksys Velop Setup Process?
How Do I Begin the Linksys Velop Setup Process?
 
Pvtaan Social media marketing proposal.pdf
Pvtaan Social media marketing proposal.pdfPvtaan Social media marketing proposal.pdf
Pvtaan Social media marketing proposal.pdf
 
Production 2024 sunderland culture final - Copy.pptx
Production 2024 sunderland culture final - Copy.pptxProduction 2024 sunderland culture final - Copy.pptx
Production 2024 sunderland culture final - Copy.pptx
 
The Use of AI in Indonesia Election 2024: A Case Study
The Use of AI in Indonesia Election 2024: A Case StudyThe Use of AI in Indonesia Election 2024: A Case Study
The Use of AI in Indonesia Election 2024: A Case Study
 
Premier Mobile App Development Agency in USA.pdf
Premier Mobile App Development Agency in USA.pdfPremier Mobile App Development Agency in USA.pdf
Premier Mobile App Development Agency in USA.pdf
 
Case study on merger of Vodafone and Idea (VI).pptx
Case study on merger of Vodafone and Idea (VI).pptxCase study on merger of Vodafone and Idea (VI).pptx
Case study on merger of Vodafone and Idea (VI).pptx
 
Statistical Analysis of DNS Latencies.pdf
Statistical Analysis of DNS Latencies.pdfStatistical Analysis of DNS Latencies.pdf
Statistical Analysis of DNS Latencies.pdf
 
Bug Bounty Blueprint : A Beginner's Guide
Bug Bounty Blueprint : A Beginner's GuideBug Bounty Blueprint : A Beginner's Guide
Bug Bounty Blueprint : A Beginner's Guide
 
ER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAEER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAE
 

(Industry track) "Challenges in Android Wear Application Development" - Jukka Ahola

  • 1. Challenges in Android Wear Application Development ICWE 2015 Jukka Ahola VTT Technical Research Centre of Finland
  • 2. 208/07/2015 The Story  Social messaging application for Android Wear watch.  Utilizes speech-to-text feature, combined with time and place.  Other users receive messages near them.
  • 3. 308/07/2015 The Application  Watch Face application.  BLE connected companion application in Android phone.  Web Service for message storage and search functionality.
  • 4. 408/07/2015 Development Issues  Buttons do not work in Watch Face applications.  Companion application in mobile phone is required for web service calls.  Language preference cannot be selected in Android Wear application.
  • 5. 508/07/2015 Workaround: Always-on Wear Application styles.xml: <style name="AppTheme" parent="@android:style/Theme.DeviceDefault"> <item name="android:windowSwipeToDismiss">false</item> </style> round_activity_main.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" tools:deviceIds="wear_round" android:keepScreenOn="true"> MainActivity.java: private DismissOverlayView mDismissOverlay; private GestureDetector mDetector; @Override protected void onCreate(Bundle savedInstanceState) { … mDismissOverlay = (DismissOverlayView) findViewById(R.id.dismiss_overlay); mDismissOverlay.setIntroText("QUIT APPLICATION"); mDismissOverlay.showIntroIfNecessary(); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); mDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() { public void onLongPress(MotionEvent ev) { mDismissOverlay.show(); } }); } @Override public boolean onTouchEvent(MotionEvent event) { return mDetector.onTouchEvent(event) || super.onTouchEvent(event); } • Buttons work. • Needs to be started. • Consumes battery.
  • 6. 608/07/2015 Android Wear and Wi-Fi Support?  Limited to Android Wear watches supporting Wi-Fi.  Do not work on Wi-Fi-networks requiring activation (such as free airport wi-fi providers).  If Wi-Fi is not available, you still have to delegate the web service calls to the companion application through BLE communication. Solution: seamless HttpURLConnection-class for Wear that utilizes either direct Wi-Fi connectivity or network bridging through BLE- connectivity.
  • 7. 708/07/2015 Language Support  Still ignores the language preferences set by the Wear application.  Difficulties mixing two languages in one sentence. For example, spelling foreign names or street addresses. Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH); intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM); Locale currentLocale = new Locale("fi_FI"); // Locale.ENGLISH; String currentLanguage = "SUOMI"; // "ENGLISH"; intent.putExtra(RecognizerIntent.EXTRA_PROMPT, currentLanguage); intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, currentLocale.getLanguage()); intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE, currentLocale.getLanguage()); startActivityForResult(intent, SPEECH_REQUEST_CODE);
  • 8. 808/07/2015 THANK YOU Jukka Ahola VTT Technical Research Centre of Finland LTD jukka.ahola@vtt.fi +358 40 076 4010 http://www.vtt.fi LinkedIn: https://www.linkedin.com/in/jukkaahola