SlideShare una empresa de Scribd logo
1 de 24
Micro serveur http embarqué
usages et implémentations
HTTP
About me
Guilhem Duché
Expert Android iD.apps
@theguiguito
1. Introduction
2. Pour quoi faire ?
3. Solutions techniques
4. Affichage d’informations
5. Partage de fichiers
6. Avec un chromecast
7. Conclusion
1. Introduction
1. Introduction
Comment échanger entre différents devices
localement ?
Bluetooth => appairage
QRCode => limité
NFC => peu de données, forte proximité
Push => réactivité, débit, compatibilité
Réseau local => Wifi + Serveur HTTP
2. Pour quoi faire ?
2. Pour quoi faire ?
Exemples d’applications :
▪ Envoi de données dans une application iPad
▪ Airdroid
▪ SuperBeam
Différents types d’usages
▪ Affichage/envoi d’information
▪ Partage de fichiers
▪ Serveur accessible localement
3. Solutions techniques
3. Solutions techniques
Objectif => pas d’usine à gaz
NanoHttpd :
▪ 1 fichier
▪ Support complet http 1.1
▪ Facile à modifier
https://github.com/NanoHttpd/nanohttpd
Restlet
▪ Simple pour mise en œuvre API Rest
http://restlet.com/
4. Affichage d’informations
4. Affichage d’informations
Projet client avec forte synchronisation DB
Comment débugguer une base SQLite rapidement
Librairie Cardeto :
▪ DB Browsing
▪ Logcat
▪ Clipboard
▪ Static variables
▪ App info
https://github.com/guiguito/Cardeto
4. Implémentation/démo
Permissions nécessaires
Surcharger le comportement de nanoHttpd
5. Partage de fichiers
5. Partage de fichiers
Partage android via wifi
▪ Fichiers
▪ Images
▪ Vidéos
▪ Contact
▪ Position Google maps
▪ Textes
AIRShare
▪ Superbeam light
▪ Open source
▪ NFC/QRCode
https://github.com/guiguito/AIRShare
5. Implémentation/démo
Partage de fichier avec nano httpd
IP du smarphone en AP
6. Avec un chromecast
6. Architecture d’une
application chromecast
6. Idée d’application chromecast
Faire une présentation avec un chromecast
▪ PPT
▪ PDF
Pas de libs java pour les PPT
Héberger un site dans assets
SlidesCast
▪ SlideShare
▪ Local Files
https://github.com/guiguito/SlidesCast
Architecture (1/2)
Browser HTML 5
iFrame
Architecture (2/2)
Implémentation
Data centric chromecast app
Chromecast :
▪ iFrame
▪ HTML 5 post message
Smartphone :
▪ Cast Companion Library
▪ SlideShare API
▪ Viewer.js => support de postmessage
▪ NanoHttpd => support des Assets
7. Conclusion
Implémentation/démo
Wifi is not dead
Ne pas se priver d’un serveur HTTP embarqué
▪ Simple à utiliser
▪ Simple à modifier
▪ Efficace
▪ Compatibilité du HTTP
Réutiliser les exemples Open source
@theguiguito
https://github.com/guiguito
iD.apps
http://www.id-apps.fr
http://blog.id-apps.info
@iD_apps
Guilhem DUCHE

Más contenido relacionado

Destacado

Chromium ui framework(shared)
Chromium ui framework(shared)Chromium ui framework(shared)
Chromium ui framework(shared)gnomekr
 
Chromium Contributing Explained: Writing Good Patches
Chromium Contributing Explained: Writing Good PatchesChromium Contributing Explained: Writing Good Patches
Chromium Contributing Explained: Writing Good PatchesSamsung Open Source Group
 
Clean Sky Projects on the More Electric Aircraft
Clean Sky Projects on the More Electric AircraftClean Sky Projects on the More Electric Aircraft
Clean Sky Projects on the More Electric AircraftTorben Haagh
 
How is glass made (2)
How is glass made (2)How is glass made (2)
How is glass made (2)Aj Saliha
 
Thomann2015 dissertation
Thomann2015 dissertationThomann2015 dissertation
Thomann2015 dissertationOlivier Thomann
 
Hitea Press Article April 2014
Hitea Press Article April 2014Hitea Press Article April 2014
Hitea Press Article April 2014Jim Rowbotham
 
Une cheminee ethanol dans votre domicile
Une cheminee ethanol dans votre domicile
Une cheminee ethanol dans votre domicile
Une cheminee ethanol dans votre domicile foyerbio-encastrable9
 
× MEL Métropole Européenne de Lille Yannick Jacob, chef du service évolution ...
×	MEL Métropole Européenne de Lille Yannick Jacob, chef du service évolution ...×	MEL Métropole Européenne de Lille Yannick Jacob, chef du service évolution ...
× MEL Métropole Européenne de Lille Yannick Jacob, chef du service évolution ...Véronique SEEL (Michaut)
 
Android Chromium Rendering Pipeline
Android Chromium Rendering PipelineAndroid Chromium Rendering Pipeline
Android Chromium Rendering PipelineHyungwook Lee
 
Mobile Browser Internal (Blink Rendering Engine)
Mobile Browser Internal (Blink Rendering Engine)Mobile Browser Internal (Blink Rendering Engine)
Mobile Browser Internal (Blink Rendering Engine)Hyungwook Lee
 
Steel and effect of alloying elements
Steel and effect of alloying elementsSteel and effect of alloying elements
Steel and effect of alloying elementstemkin abdlkader
 

Destacado (11)

Chromium ui framework(shared)
Chromium ui framework(shared)Chromium ui framework(shared)
Chromium ui framework(shared)
 
Chromium Contributing Explained: Writing Good Patches
Chromium Contributing Explained: Writing Good PatchesChromium Contributing Explained: Writing Good Patches
Chromium Contributing Explained: Writing Good Patches
 
Clean Sky Projects on the More Electric Aircraft
Clean Sky Projects on the More Electric AircraftClean Sky Projects on the More Electric Aircraft
Clean Sky Projects on the More Electric Aircraft
 
How is glass made (2)
How is glass made (2)How is glass made (2)
How is glass made (2)
 
Thomann2015 dissertation
Thomann2015 dissertationThomann2015 dissertation
Thomann2015 dissertation
 
Hitea Press Article April 2014
Hitea Press Article April 2014Hitea Press Article April 2014
Hitea Press Article April 2014
 
Une cheminee ethanol dans votre domicile
Une cheminee ethanol dans votre domicile
Une cheminee ethanol dans votre domicile
Une cheminee ethanol dans votre domicile
 
× MEL Métropole Européenne de Lille Yannick Jacob, chef du service évolution ...
×	MEL Métropole Européenne de Lille Yannick Jacob, chef du service évolution ...×	MEL Métropole Européenne de Lille Yannick Jacob, chef du service évolution ...
× MEL Métropole Européenne de Lille Yannick Jacob, chef du service évolution ...
 
Android Chromium Rendering Pipeline
Android Chromium Rendering PipelineAndroid Chromium Rendering Pipeline
Android Chromium Rendering Pipeline
 
Mobile Browser Internal (Blink Rendering Engine)
Mobile Browser Internal (Blink Rendering Engine)Mobile Browser Internal (Blink Rendering Engine)
Mobile Browser Internal (Blink Rendering Engine)
 
Steel and effect of alloying elements
Steel and effect of alloying elementsSteel and effect of alloying elements
Steel and effect of alloying elements
 

Similar a Serveur http embarqué dans une application Android. Usages et implémentations

10 astuces que vous pouvez faire dès maintenant pour améliorer la performance...
10 astuces que vous pouvez faire dès maintenant pour améliorer la performance...10 astuces que vous pouvez faire dès maintenant pour améliorer la performance...
10 astuces que vous pouvez faire dès maintenant pour améliorer la performance...Wiiisdom
 
Astroclermont @clermontech
Astroclermont @clermontechAstroclermont @clermontech
Astroclermont @clermontechBaptiste MOREAU
 
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...sebastienmoreno
 
Motwin - cto crunch - 141205 - Optimiser la latence applicative mobile
Motwin -  cto crunch - 141205 - Optimiser la latence applicative mobileMotwin -  cto crunch - 141205 - Optimiser la latence applicative mobile
Motwin - cto crunch - 141205 - Optimiser la latence applicative mobileCommunity motwin
 
Retour AFUP du forumphp 2017
Retour AFUP du forumphp 2017Retour AFUP du forumphp 2017
Retour AFUP du forumphp 2017AFUP_Limoges
 
Delegation d'authentification
Delegation d'authentificationDelegation d'authentification
Delegation d'authentificationSébastien Brault
 
Serveur nomade dans l'nternet des Objets
Serveur nomade dans l'nternet des ObjetsServeur nomade dans l'nternet des Objets
Serveur nomade dans l'nternet des ObjetsChristophe Villeneuve
 
Etude et mise en place d’un VPN
Etude et mise en place d’un VPNEtude et mise en place d’un VPN
Etude et mise en place d’un VPNCharif Khrichfa
 
Les nouvelles architectures Skype for Business
Les nouvelles architectures Skype for BusinessLes nouvelles architectures Skype for Business
Les nouvelles architectures Skype for BusinessEudes Olivier ROBERT
 
Uni.sherbrooke 2015 créez la meilleur application grâce à gwt, gwtp et j...
Uni.sherbrooke 2015   créez la meilleur application grâce à gwt, gwtp et j...Uni.sherbrooke 2015   créez la meilleur application grâce à gwt, gwtp et j...
Uni.sherbrooke 2015 créez la meilleur application grâce à gwt, gwtp et j...Arcbees
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !VISEO
 
NodeJS for Mobile App
NodeJS for Mobile AppNodeJS for Mobile App
NodeJS for Mobile AppHabib MAALEM
 
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms - breizhcam...
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms  - breizhcam...Gulp fiction, Builder, tester, livrer, sans tomber dans les poms  - breizhcam...
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms - breizhcam...mbrechet
 
La parola alle cose - Dquid Cday Roma
La parola alle cose - Dquid Cday RomaLa parola alle cose - Dquid Cday Roma
La parola alle cose - Dquid Cday RomaInSide Training
 
Réunion technique Android
Réunion technique AndroidRéunion technique Android
Réunion technique Androidnaholyr
 

Similar a Serveur http embarqué dans une application Android. Usages et implémentations (20)

Le web en http 2
Le web en http 2Le web en http 2
Le web en http 2
 
10 astuces que vous pouvez faire dès maintenant pour améliorer la performance...
10 astuces que vous pouvez faire dès maintenant pour améliorer la performance...10 astuces que vous pouvez faire dès maintenant pour améliorer la performance...
10 astuces que vous pouvez faire dès maintenant pour améliorer la performance...
 
Astroclermont @clermontech
Astroclermont @clermontechAstroclermont @clermontech
Astroclermont @clermontech
 
Drupal dans l'internet des objets
Drupal dans l'internet des objetsDrupal dans l'internet des objets
Drupal dans l'internet des objets
 
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle s...
 
Motwin - cto crunch - 141205 - Optimiser la latence applicative mobile
Motwin -  cto crunch - 141205 - Optimiser la latence applicative mobileMotwin -  cto crunch - 141205 - Optimiser la latence applicative mobile
Motwin - cto crunch - 141205 - Optimiser la latence applicative mobile
 
Retour AFUP du forumphp 2017
Retour AFUP du forumphp 2017Retour AFUP du forumphp 2017
Retour AFUP du forumphp 2017
 
Delegation d'authentification
Delegation d'authentificationDelegation d'authentification
Delegation d'authentification
 
Serveur nomade dans l'nternet des Objets
Serveur nomade dans l'nternet des ObjetsServeur nomade dans l'nternet des Objets
Serveur nomade dans l'nternet des Objets
 
Etude et mise en place d’un VPN
Etude et mise en place d’un VPNEtude et mise en place d’un VPN
Etude et mise en place d’un VPN
 
Pfsense
PfsensePfsense
Pfsense
 
Les nouvelles architectures Skype for Business
Les nouvelles architectures Skype for BusinessLes nouvelles architectures Skype for Business
Les nouvelles architectures Skype for Business
 
Uni.sherbrooke 2015 créez la meilleur application grâce à gwt, gwtp et j...
Uni.sherbrooke 2015   créez la meilleur application grâce à gwt, gwtp et j...Uni.sherbrooke 2015   créez la meilleur application grâce à gwt, gwtp et j...
Uni.sherbrooke 2015 créez la meilleur application grâce à gwt, gwtp et j...
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !
 
NodeJS for Mobile App
NodeJS for Mobile AppNodeJS for Mobile App
NodeJS for Mobile App
 
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms - breizhcam...
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms  - breizhcam...Gulp fiction, Builder, tester, livrer, sans tomber dans les poms  - breizhcam...
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms - breizhcam...
 
IOT-1.pdf
IOT-1.pdfIOT-1.pdf
IOT-1.pdf
 
Livre Blanc Web temps réel - Node JS
Livre Blanc Web temps réel - Node JSLivre Blanc Web temps réel - Node JS
Livre Blanc Web temps réel - Node JS
 
La parola alle cose - Dquid Cday Roma
La parola alle cose - Dquid Cday RomaLa parola alle cose - Dquid Cday Roma
La parola alle cose - Dquid Cday Roma
 
Réunion technique Android
Réunion technique AndroidRéunion technique Android
Réunion technique Android
 

Serveur http embarqué dans une application Android. Usages et implémentations