Your SlideShare is downloading. ×
0
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
SETapp Präsentation
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

SETapp Präsentation

1,981

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,981
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
8
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Einsatz der Near Field CommunicationTechnologie im wissenschaftlichen Kontext - Konzeption und Implementierung einer mobilen Applikation für das Android- Betriebssystem Tim Messerschmidt, 19.07.2011 1 1
  • 2. Gliederung• Android als Plattform• NFC als Technik• OAuth• Mendeley als Service-Provider• Datenaustausch via JSON• SETapp • Design der Applikation • Funktionen• Evaluation 2 2
  • 3. Android als Plattform 3 3
  • 4. Android als Plattform 3 3
  • 5. Android als Plattform 3 3
  • 6. Android als Plattform 3 3
  • 7. Android als Plattform 3 3
  • 8. Unsere Testplattform • Googles Referenzplattform • erstes Android-Telefon mit NFC • Android 2.3.4 (Gingerbread) • für Lesen und Schreiben via NFC • Leihstellung von SamsungSamsung Nexus S 4
  • 9. Android als Plattform• Basiert auf einem Linux-Kernel• Bietet schnellen API-Zugriff auf Hardware • WLAN, NFC, Bluetooth, ...• Wird in Java entwickelt• Oberflächendeklaration in XML 5 5
  • 10. NFC als Technik• Drahtloser Austausch von Daten• Schnelle Kopplung von Geräten (< 0.02s)• Kurze Übertragungsdistanz (< 2cm)• Hohe Fehlerresistenz• NFC-Tags mit bis zu 1 Mb Speicher• Aktiver und passiver Standard 6 6
  • 11. NFC vs. QR-Codes Verwendeter QR-Code 7
  • 12. NFC vs. QR-Codes• QR-Code benötigt optimale Bedingungen: • gute Kamera • schneller Autofokus • gute Lichtverhältnisse • Applikation muss erst gestartet werden 8
  • 13. NFC vs. QR-Codes• QR-Code benötigt Nr QR NFC optimale Bedingungen: 1 4730ms 910ms • gute Kamera 2 5300ms 1920ms 3 5400ms 2320ms • schneller Autofokus 4 7800ms 1620ms • gute Lichtverhältnisse 5 4710ms 2260ms • Applikation muss erst 6 5540ms 2160ms gestartet werden Schnitt 5580ms 1865ms 8
  • 14. NFC vs. QR-Codes• QR-Code benötigt Nr QR NFC optimale Bedingungen: 1 4730ms 910ms • gute Kamera 2 5300ms 1920ms 3 5400ms 2320ms • schneller Autofokus 4 7800ms 1620ms • gute Lichtverhältnisse 5 4710ms 2260ms • Applikation muss erst 6 5540ms 2160ms gestartet werden Schnitt 5580ms 1865ms NFC um Faktor 3 schneller 8
  • 15. OAuth• Leitet den Benutzer auf eine dynamisch-generierte Login-Seite des eigentlichen Services weiter• Service gibt Credentials zurück, welche der Applikation Zugriff via API auf Ressourcen des authentifizierten Benutzers gibt• Genutzt von vielen Social Networks 9 9
  • 16. OAuth• Leitet den Benutzer auf eine dynamisch-generierte Login-Seite des eigentlichen Services weiter• Service gibt Credentials zurück, welche der Applikation Zugriff via API auf Ressourcen des authentifizierten Benutzers gibt• Genutzt von vielen Social Networks 9 9
  • 17. OAuth• Leitet den Benutzer auf eine dynamisch-generierte Login-Seite des eigentlichen Services weiter• Service gibt Credentials zurück, welche der Applikation Zugriff via API auf Ressourcen des authentifizierten Benutzers gibt• Genutzt von vielen Social Networks 9 9
  • 18. OAuth• Leitet den Benutzer auf eine dynamisch-generierte Login-Seite des eigentlichen Services weiter• Service gibt Credentials zurück, welche der Applikation Zugriff via API auf Ressourcen des authentifizierten Benutzers gibt• Genutzt von vielen Social Networks 9 9
  • 19. OAuth• Leitet den Benutzer auf eine dynamisch-generierte Login-Seite des eigentlichen Services weiter• Service gibt Credentials zurück, welche der Applikation Zugriff via API auf Ressourcen des authentifizierten Benutzers gibt• Genutzt von vielen Social Networks 9 9
  • 20. • Großer Datenstamm (Stand: 15.07.11) • 1.059.449 Personen • 98.212.833 Papers• Wird zur Anmeldung genutzt (via OAuth) • spart eigenen Account für SETapp 10 10
  • 21. • Problem: • API war bis Mitte Juni unbrauchbar • Keine banalen Details wie Name, E-Mail oder Arbeitgeber abrufbar • API selbst jetzt noch teils fehlerhaft • Profil-Details via JSON • OAuth bietet nicht vollen Zugriff 11 11
  • 22. • Profil-Details via JSON: • Contact im ausgefüllten Zustand: • { ... } Details wie E-Mail oder Skype • Contact im leeren Zustand: • [] Kennzeichnung für ein leeres Array 12 12
  • 23. JSON• Effizientes Datenaustauschformat mit geringem Overhead• Nativ bei Android unterstützt• Auf Serverseite durch Library nachgepflegt• Wird zur (De-)Serialisierung von Objekten genutzt (auch in Collections) 13 13
  • 24. Android-ApplikationGoogle App Engine-Backend 14
  • 25. Design• Verwendung von Design-Patterns• Möglichst komprimierte Darstellung von Informationen• Unaufdringliche Gestaltung & Farbwahl• Konsistenz• Keine versteckten Funktionen• Maximale Wiederverwendbarkeit 15
  • 26. ActionBar Nachricht schicken Person folgen zurück zur letzten Activity situationsabhängige Funktionen an einer zentralen Position 16
  • 27. TabBar und Actions Tabs mit verschiedenen Inhalten / Funktionen Hauptfunktionen 17
  • 28. Funktionen• Profiltausch• Dokumententausch• Check-in in Events und Talks• Lesen einer Paper-Session• „Folgen“ von Personen• Nachrichten versenden & empfangen 18
  • 29. ProfiltauschDie Rückseiten der Telefone zusammenführen 19
  • 30. Profiltausch 20
  • 31. Profiltausch { MIME: application/x-setapp-share ( PAYLOAD={ "type": "de.upb.messerschmidt.set.entity.Person", "name": "Messerschmidt", "prename": "Tim" } ) } 20
  • 32. Dokumententausch 21
  • 33. IntegrationAndere Apps nutzen unsere Daten! 22
  • 34. Integration• Vorteil: • Teilnehmer können über mehrere Kanäle von SETapp profitieren • Auch Leute ohne SETapp werden nicht komplett ausgeschlossen• SETapp teilt Dokumente per NFC 23
  • 35. Check-in.. oder per NFC! 24
  • 36. Google App Engine• Instanzenmodell führt zu hohen Latenzen • erster Start: 2666ms • nächster Aufruf: 69ms• Datenspeicherung umständlich • Vater-Kind-Relationen und Vererbung nur mangelhaft implementierbar 25
  • 37. Evaluation• 11 Teilnehmer• Teststrecke: • 1 Event • 2 Talks • 2 Paper-Sessions 26
  • 38. NFC Geschwindigkeit sehr langsam langsam eher langsam eher schnell schnell sehr schnell76543210 Empfinden der Teilnehmer 27
  • 39. NFC oder manuell? nur manuell lieber manuell eher manuell eher NFC lieber NFC nur NFC43210 Präferenz der Teilnehmer 28
  • 40. Vielen Dank! 29
  • 41. Fragen? 30

×