SlideShare une entreprise Scribd logo
1  sur  78
Télécharger pour lire hors ligne
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

Contenu connexe

Tendances

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
 

Tendances (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
 

Similaire à 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
 

Similaire à 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
 

Plus de 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
 

Plus de 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
 

Dernier

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 

Dernier (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 

Droidcon Turin 2015 - Android wear sdk introduction