SlideShare ist ein Scribd-Unternehmen logo
1 von 78
Downloaden Sie, um offline zu lesen
Introduction to the SDK
Tiziano
Basile
Mike
Trizio
#androidwear
#androidwear
#androidwear
#androidwear
#androidwear
#androidwear
you talk to the
wearable
#androidwear
actions
#androidwear
actions
#androidwear
the wearable
talks to you
actions
#androidwear
actions
context
#androidwear
actions
context
#androidwear
Launched automatically
#androidwear
Glanceable
#androidwear
Suggest and demand
#androidwear
Zero or low interaction
#androidwear
#androidwear
Notifications Apps
#androidwear
Notifications
#androidwear
#androidwear
#androidwear
NO WORK
REQUIRED
#androidwear
#androidwear
NO WORK
REQUIRED
RepliesPagesStacks
#androidwear
Apps
#androidwear
Send data Custom UI Voice Actions
#androidwear
#androidwear
Node
Data
Message
#androidwear
Send data Custom UI Voice Actions
#androidwear
#androidwear
#androidwear
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.android.support:wearable:+'
compile 'com.google.android.gms:play-services-wearable:+'
}
build.gradle
#androidwear
Classes
#androidwear
● BoxInsetLayout
● Card Fragment
● CircledImageView
● ConfirmationActivity
● DismissOverlayView
● GridViewPager
● GridPagerAdapter
● FragmentGridPagerAdapter
● WatchViewStub
Send data Custom UI Voice Actions
#androidwear
#androidwear
Available commands
#androidwear
● Call a car/taxi
● Take a note
● Set alarm
● Set timer
● Start/Stop a bike ride
● Start/Stop a run
● Start/Stop a workout
● Show heart rate
● Show step count
Apps
Notifications Stand alone
Apps
Just edit you handheld app’s code
and you’re ready to go!
Notifications
Add build.gradle dependencies
compile "com.android.support:support-v4:20.0.+"
Import support library’s classes
import android.support.v4.app.NotificationCompat;
import android.support.v4.app.NotificationManagerCompat;
import android.support.v4.app.NotificationCompat.WearableExtender;
build.gradle
Create and issue the notification
Notification mNotification = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_launcher)
.setContentTitle("Simple Notification")
.setContentText("Just a title, a text and an icon")
.build();
NotificationManagerCompat mNotificationManager =
NotificationManagerCompat.from(this);
mNotificationManager.notify(mNotificationId, mNotification);
MobileActivity.java
Add a “open on device” action
Intent intent = new Intent(this, NotificationIntentActivity.class);
intent.putExtra("EventID", 1);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, 0);
Notification mNotification = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_launcher)
.setContentTitle("Simple Notification")
.setContentText("Just a title, a text and an icon")
.setContentIntent(pendingIntent)
.build();
MobileActivity.java
Add a custom action
Intent intent = new Intent(Intent.ACTION_VIEW);
Uri position = Uri.parse("geo:0,0?q=41.109388,16.878843");
intent.setData(position);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, 0);
Notification mNotification = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_launcher)
.setContentTitle("Simple Notification")
.setContentText("Just a title, a text and an icon")
.addAction(R.drawable.ic_location, "Check your position", pendingIntent);
.build();
MobileActivity.java
Add a custom action ONLY ON WEAR
NotificationCompat.Action mAction =
new NotificationCompat.Action.Builder(
R.drawable.ic_location,
“Check your position”
mPendingIntent).build();
NotificationCompat.WearableExtender mExtender =
new NotificationCompat.WearableExtender()
.addAction(mAction);
Notification mNotification = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_launcher)
.setContentTitle("Simple Notification")
.setContentText("Just a title, a text and an icon")
.extend(mExtender)
.build();
MobileActivity.java
WearableExtender
NotificationCompat.WearableExtender mExtender =
new NotificationCompat.WearableExtender()
.addAction(mAction)
.setBackground(myBitmap) //set a background image
.setHintHideIcon(true); //hide the notification icon on the card
Further info about the WearableExtender class at http://bit.ly/1sA2DsL
MobileActivity.java
Voice Inputs
● Handled by the Cue Card
● Can provide a list of predefined commands
● Use RemoteInput class to request user
interaction via voice commands
Prepare Voice Input
public static final String EXTRA_VOICE_REPLY = “user voice”;
public String[] mChoices = getResources().getStringArray(R.array.choices);
RemoteInput mVoiceInput = new RemoteInput.Builder(EXTRA_VOICE_REPLY)
.setLabel(“Reply”)
.setChoices(choices) //optional
.build();
...let’s add it to a notification
MobileActivity.java
Prepare Voice Input
NotificationCompat.Action mVoiceAction =
new NotificationCompat.Action.Builder(R.drawable.icon, “Reply”,
mPendingIntent)
.addRemoteInput(mVoiceInput)
.build();
NotificationCompat.WearableExtender mExtender =
new NotificationCompat.WearableExtender()
.addAction(mVoiceAction);
Notification mNotification = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.notification_icon)
.setContentTitle(R.string.notification_title)
.setContentText(“Here’s the notification text”)
.extend(mExtender)
.build();
MobileActivity.java
Receive Voice Input
@Override
public void onCreate(Bundle onSavedInstanceState){
super.onCreate(onSavedInstanceState);
Intent mReceivedIntent = getIntent();
Bundle mRemoteInput = RemoteInput.getResultsFromIntent(mReceivedIntent);
String mreply = “”;
if(mRemoteInput != null){
mReply = mRemoteInput.getCharSequence(EXTRA_VOICE_REPLY).toString();
}
}
MobileActivity.java
Paged Notifications
NotificationCompat.Builder mFirstPageBuilder =
new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.icon)
.setContentTitle(R.string.title)
.setContentText(“This is the first page”);
Notification mSecondPage =
new NotificationCompat.Builder(this)
.setContentTitle(R.string.titletwo)
.setContentText(“This is the second page!”)
.build();
Notification mNotification = new NotificationCompat.WearableExtender()
.addPage(mSecondPage)
.extend(mFirstPage)
.build();
MobileActivity.java
Stacked Notifications
public static final String APP_GROUP = “App Notifications”;
Notification mNotification = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_launcher)
.setContentTitle("Simple Notification")
.setContentText("Just a title, a text and an icon")
.setGroup(APP_GROUP)
.build();
MobileActivity.java
Stacked Notifications, GroupSummary
public static final String APP_GROUP = “App Notifications”;
Notification mSummaryNotification = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_launcher)
.setLargeIcon(largeIcon)
.setStyle(new NotificationCompat.InboxStyle()
.addLine("First Notification Hi, I'm a notification")
.addLine("Second Notification Yay, here's the second one!")
.setBigContentTitle("2 Notifications from your app")
.setSummaryText("com.example.app"))
.setGroup(GROUP_ID)
.setGroupSummary(true)
.build();
MobileActivity.java
Write your wear apps almost like
phone apps
Stand Alone
Apps
● Access to device’s sensors
● A wearable app is more useful in some
situations
● Quick info without pulling out the phone
Stand Alone
Apps
● Short Timeline
● Needs a companion app because of Playstore
compatibility
● Less functionality than a phone app
● DON’T PORT YOUR UI ON A WEARABLE!!!
Stand Alone
Apps
android.webkit
android.print
android.app.backup
android.appwidget
android.hardware.usb
no support on wear
Don’t use these packages
How to create a wearable app?
Phase 1: Prepare your devices
● Pair your phone with wear/emulator
● Enable Bluetooth debug in wear app
● Enabe Bluetooth debug on the wear device
● Enable Developer Options on wear (as easy as on the phone)
● Connect the phone to the PC
● Open terminal and launch one of the following commands
adb -s <phone id> forward tcp:5601 tcp:5601
adb forward tcp:4444 localabstract:/adb-hub; adb
connect localhost:4444
Phase 2: create a project
● Notifications:
● Data Layer:
● UI:
If you don’t need to share notification between mobile and wear, use the
standard notification class, otherwise use NotificationCompat
Use only if you need to sync data or send messages between mobile
and wear. Remove if not necessary
You should use it if you want to create beautiful UI that
really rocks!
Docs available at http://bit.ly/1p8ekRu
Choose your libraries
<activity android:name=”com.app.NotificationActivity”
android:exported=”true”
android:allowEmbedded=”true”
android:taskAffinity=””
android:theme=”@android:style/Theme.DeviceDefault.Light”>
</activity>
Use Activity as Custom Notification
.Manifest
Intent mNotificationIntent = new Intent(this, NotificationActivity.class);
PendingIntent mNotificationPendingIntent =
PendingIntent.getActivity(
this, 0, mNotificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);
Notification mNotification = new Notification.Builder(this)
.setSmallIcon(R.drawable.icon) //Mandatory
.setContentTitle(R.string.title)
.extend(new Notification.WearableExtender()
.setDisplayIntent(mNotificationPendingIntent))
.build();
WearActivity.java
Use Activity as Custom Notification
Built-in
intents
Custom
intents
Freestyle
Add Voice Commands
Built-in
intents
Just add an intent filter in your Activity
Add Voice Commands
Built-in Intents
<activity android:name=”.NoteActivity”>
<intent-filter>
<action android:name=”android.intent.action.SEND”/>
<category android:name=”com.google.android.voicesearch.SELF_NOTE” />
</intent-filter>
</activity>
A complete list of built-in intents can be found at http://bit.ly/1p8omlo
Add Voice Commands
.Manifest
Custom
intents
Add an attribute in the activity tag in
manifest
Add Voice Commands
<activity android:name=”.NoteActivity”
android:label=”NoteApp”>
<intent-filter>
<action android:name=”android.intent.action.MAIN”/>
<category android:name=”android.intent.category.LAUNCHER” />
</intent-filter>
</activity>
The user can launch the app saying “Launch NoteApp”
Custom Intents
Add Voice Commands
.Manifest
Freestyle
use startActivityForResult()
Add Voice Commands
private static final int SPEECH_REQ_CODE = 1;
...
...
Intent speechIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
speechIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_FORM_FREE_FORM);
startActivityForResult(speechIntent, SPEECH_REQ_CODE);
Freestyle
Add Voice Commands
.WearActivity
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
if(requestCode == SPEECH_REQ_CODE && resultCode == RESULT_OK){
List<String> results = data.getStringArrayListExtra(
RecognizerIntent.EXTRA_RESULTS);
String spokenText = results.get(0);
}
super.onActivityResult(requestCode, resultCode, data);
}
.WearActivity
Freestyle
Add Voice Commands
https://github.com/tizionario/AndroidWearSDKDemo
Try it yourself!
What’s next?
Kickstart your experience with Android Wear
Mario Viviani
Advanced Dev Tips for Android Wear
Alfredo Morresi
Tomorrow
Fit4Dev - Case Study
Nicola Policoro & Marco Rinaldi
14:50 @ Sala Lisbona
Thank you!
please leave a feedback
Tiziano Basile (@tizionario)
tiz.basile@gmail.com
Mike Trizio (@mik3lantoni0)
mikelantonio.trizio@gmail.com

Weitere ähnliche Inhalte

Was ist angesagt?

iOS 7 Accessibility
iOS 7 AccessibilityiOS 7 Accessibility
iOS 7 AccessibilityTed Drake
 
pentest mobile app issue
pentest mobile app issuepentest mobile app issue
pentest mobile app issueshekar M
 
Development Playbook Application With Adobe AIR 2.5 and QNX SDK
Development Playbook Application With Adobe AIR 2.5 and QNX SDKDevelopment Playbook Application With Adobe AIR 2.5 and QNX SDK
Development Playbook Application With Adobe AIR 2.5 and QNX SDKTubagus Anwar
 
Startup in action: Atooma, by Francesca Romano
Startup in action: Atooma, by Francesca Romano Startup in action: Atooma, by Francesca Romano
Startup in action: Atooma, by Francesca Romano Codemotion
 
Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009sullis
 
Break Timer: Android-wear introduction and application case-study
Break Timer: Android-wear introduction and application case-studyBreak Timer: Android-wear introduction and application case-study
Break Timer: Android-wear introduction and application case-studyUmair Vatao
 
Skinning Android for Embedded Applications
Skinning Android for Embedded ApplicationsSkinning Android for Embedded Applications
Skinning Android for Embedded ApplicationsVIA Embedded
 
Ipad Apps for Meeting & Events presentation with voting results
Ipad Apps for Meeting & Events presentation with voting resultsIpad Apps for Meeting & Events presentation with voting results
Ipad Apps for Meeting & Events presentation with voting resultsStefania Conti-Vecchi
 

Was ist angesagt? (10)

iOS 7 Accessibility
iOS 7 AccessibilityiOS 7 Accessibility
iOS 7 Accessibility
 
Android Development Tutorial V3
Android Development Tutorial   V3Android Development Tutorial   V3
Android Development Tutorial V3
 
pentest mobile app issue
pentest mobile app issuepentest mobile app issue
pentest mobile app issue
 
Development Playbook Application With Adobe AIR 2.5 and QNX SDK
Development Playbook Application With Adobe AIR 2.5 and QNX SDKDevelopment Playbook Application With Adobe AIR 2.5 and QNX SDK
Development Playbook Application With Adobe AIR 2.5 and QNX SDK
 
Startup in action: Atooma, by Francesca Romano
Startup in action: Atooma, by Francesca Romano Startup in action: Atooma, by Francesca Romano
Startup in action: Atooma, by Francesca Romano
 
Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009Getting Started with Android - OSSPAC 2009
Getting Started with Android - OSSPAC 2009
 
Break Timer: Android-wear introduction and application case-study
Break Timer: Android-wear introduction and application case-studyBreak Timer: Android-wear introduction and application case-study
Break Timer: Android-wear introduction and application case-study
 
Skinning Android for Embedded Applications
Skinning Android for Embedded ApplicationsSkinning Android for Embedded Applications
Skinning Android for Embedded Applications
 
Android Native Apps Development
Android Native Apps DevelopmentAndroid Native Apps Development
Android Native Apps Development
 
Ipad Apps for Meeting & Events presentation with voting results
Ipad Apps for Meeting & Events presentation with voting resultsIpad Apps for Meeting & Events presentation with voting results
Ipad Apps for Meeting & Events presentation with voting results
 

Ähnlich wie Droidcon Turin 2015 - Android wear sdk introduction

Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspectiveGunjan Kumar
 
Mobile Enterprise Applications
Mobile Enterprise ApplicationsMobile Enterprise Applications
Mobile Enterprise ApplicationsJason Conger
 
Android Evolution, AppForum 2014, Brussels, Friedger Müffke
Android Evolution, AppForum 2014, Brussels, Friedger MüffkeAndroid Evolution, AppForum 2014, Brussels, Friedger Müffke
Android Evolution, AppForum 2014, Brussels, Friedger MüffkeFriedger Müffke
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorialAbid Khan
 
600.250 UI Cross Platform Development and the Android Security Model
600.250 UI Cross Platform Development and the Android Security Model600.250 UI Cross Platform Development and the Android Security Model
600.250 UI Cross Platform Development and the Android Security ModelMichael Rushanan
 
Android Lab Mannual 18SUITSP5.docx
Android Lab Mannual 18SUITSP5.docxAndroid Lab Mannual 18SUITSP5.docx
Android Lab Mannual 18SUITSP5.docxkarthikaparthasarath
 
Mobile application and Game development
Mobile application and Game developmentMobile application and Game development
Mobile application and Game developmentWomen In Digital
 
Optimizing Apps for Better Performance
Optimizing Apps for Better PerformanceOptimizing Apps for Better Performance
Optimizing Apps for Better PerformanceElif Boncuk
 
Manish Chasta - Securing Android Applications
Manish Chasta - Securing Android ApplicationsManish Chasta - Securing Android Applications
Manish Chasta - Securing Android ApplicationsPositive Hack Days
 
Tips & tricks for sharing C# code on iOS, Android and Windows Phone by Jaime ...
Tips & tricks for sharing C# code on iOS, Android and Windows Phone by Jaime ...Tips & tricks for sharing C# code on iOS, Android and Windows Phone by Jaime ...
Tips & tricks for sharing C# code on iOS, Android and Windows Phone by Jaime ....NET Conf UY
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment pptsagaroceanic11
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment pptsagaroceanic11
 
Getting Started with Android 1.5
Getting Started with Android 1.5Getting Started with Android 1.5
Getting Started with Android 1.5Gaurav Kohli
 
Android interview questions and answers
Android interview questions and answersAndroid interview questions and answers
Android interview questions and answerskavinilavuG
 

Ähnlich wie Droidcon Turin 2015 - Android wear sdk introduction (20)

Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspective
 
Mobile Enterprise Applications
Mobile Enterprise ApplicationsMobile Enterprise Applications
Mobile Enterprise Applications
 
Android Evolution, AppForum 2014, Brussels, Friedger Müffke
Android Evolution, AppForum 2014, Brussels, Friedger MüffkeAndroid Evolution, AppForum 2014, Brussels, Friedger Müffke
Android Evolution, AppForum 2014, Brussels, Friedger Müffke
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
 
Android tutorial1
Android tutorial1Android tutorial1
Android tutorial1
 
600.250 UI Cross Platform Development and the Android Security Model
600.250 UI Cross Platform Development and the Android Security Model600.250 UI Cross Platform Development and the Android Security Model
600.250 UI Cross Platform Development and the Android Security Model
 
Android Lab Mannual 18SUITSP5.docx
Android Lab Mannual 18SUITSP5.docxAndroid Lab Mannual 18SUITSP5.docx
Android Lab Mannual 18SUITSP5.docx
 
Mobile application and Game development
Mobile application and Game developmentMobile application and Game development
Mobile application and Game development
 
Android Minnebar
Android MinnebarAndroid Minnebar
Android Minnebar
 
Android Intro
Android IntroAndroid Intro
Android Intro
 
Optimizing Apps for Better Performance
Optimizing Apps for Better PerformanceOptimizing Apps for Better Performance
Optimizing Apps for Better Performance
 
Manish Chasta - Securing Android Applications
Manish Chasta - Securing Android ApplicationsManish Chasta - Securing Android Applications
Manish Chasta - Securing Android Applications
 
Tips & tricks for sharing C# code on iOS, Android and Windows Phone by Jaime ...
Tips & tricks for sharing C# code on iOS, Android and Windows Phone by Jaime ...Tips & tricks for sharing C# code on iOS, Android and Windows Phone by Jaime ...
Tips & tricks for sharing C# code on iOS, Android and Windows Phone by Jaime ...
 
Android Stsucture
Android StsuctureAndroid Stsucture
Android Stsucture
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment ppt
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment ppt
 
Android
AndroidAndroid
Android
 
Getting Started with Android 1.5
Getting Started with Android 1.5Getting Started with Android 1.5
Getting Started with Android 1.5
 
Resume
ResumeResume
Resume
 
Android interview questions and answers
Android interview questions and answersAndroid interview questions and answers
Android interview questions and answers
 

Mehr von Michelantonio Trizio

[App devcon 18] Brace yourself with Android Architecture Components
[App devcon 18] Brace yourself with Android Architecture Components[App devcon 18] Brace yourself with Android Architecture Components
[App devcon 18] Brace yourself with Android Architecture ComponentsMichelantonio Trizio
 
How to deploy a Java application on Google App engine Flexible environment
How to deploy a Java application on Google App engine Flexible environmentHow to deploy a Java application on Google App engine Flexible environment
How to deploy a Java application on Google App engine Flexible environmentMichelantonio Trizio
 

Mehr von Michelantonio Trizio (9)

[App devcon 18] Brace yourself with Android Architecture Components
[App devcon 18] Brace yourself with Android Architecture Components[App devcon 18] Brace yourself with Android Architecture Components
[App devcon 18] Brace yourself with Android Architecture Components
 
Android Architecture components
Android Architecture componentsAndroid Architecture components
Android Architecture components
 
Primi passi con Project Tango
Primi passi con Project TangoPrimi passi con Project Tango
Primi passi con Project Tango
 
How to deploy a Java application on Google App engine Flexible environment
How to deploy a Java application on Google App engine Flexible environmentHow to deploy a Java application on Google App engine Flexible environment
How to deploy a Java application on Google App engine Flexible environment
 
Open street map
Open street mapOpen street map
Open street map
 
Fonti informative sugli Open Data
Fonti informative sugli Open DataFonti informative sugli Open Data
Fonti informative sugli Open Data
 
About open data
About open dataAbout open data
About open data
 
20131123 open bsk@open
20131123 open bsk@open20131123 open bsk@open
20131123 open bsk@open
 
Startup weekend bootcamp
Startup weekend bootcampStartup weekend bootcamp
Startup weekend bootcamp
 

Kürzlich hochgeladen

Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 

Kürzlich hochgeladen (20)

Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 

Droidcon Turin 2015 - Android wear sdk introduction