App Literatur iPhone Entwicklung Push-Benachrichtigungen

Slides:



Advertisements
Ähnliche Präsentationen
ONTABLES ONTABLES Einführung.
Advertisements

Be.as WEB Technologie
Support.ebsco.com Lernprogramm zum Erstellen einer lokalen Sammlung.
Einer der Dienste im Internet
OUTBOUND im Schüleraustausch
Nachtrag zum Vortrag vom Vorbereitung zur Datensicherung
Nachrichten! Klicken Sie auf Nachrichten und Sie kommen automatisch auf die Startseite von Busy-Com.de.
Topic Map zur Darstellung der Beziehungen
Folie 1 EBE-Online P C – H i l f e. Folie 2 EBE-Online Inanspruchnahme unseres Angebots von unseren 892 Mitgliedern haben bis jetzt ca. 100 Mitglieder.
MySQL.
XINDICE The Apache XML Project Name: Jacqueline Langhorst
XHTML 1.1 C. Nimz Abstrakte Module XHTML 1.1 C. Nimz Was ist ein abstraktes Modul? Definition eines XHTML-Moduls in spezieller leichter.
Anleitung zur Installation von
Einführung eines Remote Desktop Systems am RRZE
Anwendung von EvaSys (Version 3.0) für Teilbereichsadminstrator/inn/en
Generelles POVs müssen immer lizenziert werden
Seniorkom.at vernetzt Jung & Alt Das Internet ist reif
IGEL UMS Universal Management Suite Oktober 2011 Florian Spatz
Datei- übertragungs- Programm
Erste Schritte zur Konfiguration
Vorstellung.
Quelle: Walter Staufer Outlook: Pers. Ordner Im Menü Extras gehen Sie zum MenüpunktDienste... Wie Sie aus linker Abbildung sehen, öffnet sich nun dieses.
Installation und Aktivierung.
Das Streichholzspiel.
JavaScript.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
MDM Systeme im Test Udo Bredemeier
Einführung in die App- Programmierung Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Medien zwischen Technik und Gesellschaft.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 11 Folie 2 Microsoft Internet Information Services (IIS)
Logo Externer Zugang und Verknüpfungen zu easyLEARN Wissensobjekten.
Game Development mit LUA Integration und Kommunikation von LUA mit C++ Referat von Paul van Hemmen Seminar: Reusable Content in 3D und Simulationssystemen.
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Telecooperation/RBG Technische Universität Darmstadt Copyrighted material; for TUD student use only Grundlagen der Informatik I Thema 16: Ausnahmebehandlung.
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 2 Folie 2 XAML (1) s.a.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle:
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 2 REST Web Services (1)
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 8 Folie 2 ASP.NET Zustandsverwaltung
Orientierungsschule des Senseoberlandes Frédéric Aeby Werkzeuge in Educanet 2 © Frédéric Aeby,
Es handelt sich um eine Übersetzungs- App Mehr als 60 Sprachen werden angeboten Häufig verwendete Übersetzungen können gespeichert werden.
Flexible Datensicherung für kleine und mittlere Unternehmen
Vom Kontext zum Projekt V Carina Berning Sabrina Gursch Pierre Streicher Intelligente Dateisysteme.
OMDS-Einspielung in den KundenManager. Der Import beginnt im chegg.net-Kundenmanager. (Links oben über das Pulldown-Menu erreichbar).
Schnelleinstieg Schnelleinstieg für bereits geschulte User zur Schulung OMDS-Einspielung in FinanzProfiT Bitte auf gewünschte Variante klicken oder weiterblättern….
Von Isabelle Spörl und Simon Schausberger
Mobility Lösungen heute GOOD for Enterprise Tobias Esser GELSEN-NET Kommunikationsgesellschaft mbH Vertrieb Geschäftskunden / Systemgeschäft.
Quick Start Guide (de) Communote 2.2. Communote GmbH · Kleiststraße 10 a · D Dresden/Germany · +49 (351) · ·
Quick Start Guide (de) Communote 2.0. Communardo Software GmbH · Kleiststraße 10 a · D Dresden/Germany · +49 (351) ·
Kaseya Virtual System Administrator Produkt Update 7.0 Rocco van der Zwet Copyright ©2014 Kaseya 1.
Lync Kurzübersicht Chatnachrichten, Anwesenheit und Kontakte
->Prinzip ->Systeme ->Peer – to – Peer
Aloaha Software – Martin Wrocklage 05451/943522) Aloaha Mobile Smartcard Connector (CSP)
Was wäre wenn….. SNMP (Simple Network Managment Protocol)
Installation, Konfiguration, Online stellen, Zugriff © by Lars Koschinski 2003.
Formulare Vanessa Kogelbauer.
Web und Mobile Apps Programmieren Marco Jakob Kurzvortrag OSS an Schulen
Agenda 1. Definition Smartphone App Seite 2 2.
Mittagstisch App Android Version Anlehnung an iOS version Entwickelt mit Git Versioning-System Keine Favoriten Keine Bewertungen Keine Abstands- berechnung.
Internet-Grundtechnologien. Client / Server Client („Kunde“): fordert Information / Datei an im Internet: fordert Internetseite an, z.B.
Lync Windows Store-App
Referat von Mustafa.S Daniel.M
Rechtevergabe bei Windows 2000 Server Planung und Ausführung Schäffler und Lindauer.
Anleitung für Administratoren Wählen Sie die Registrierungsfolien für Ihre Umgebung: SaaS oder On Premise. Bearbeiten Sie den roten Text entsprechend Ihrer.
Pool Informatik, Sj 11/12 GZG FN W.Seyboldt 1 Pool Informatik 5 GZG FN Sj. 11/12 Kopieren, Daten, Programme.
Webservices SOAP und REST Nicole Fronhofs 1. Betreuer: Prof. Dr. Volker Sander 2. Betreuer: B. Sc. Sebastian Olscher.
Netzwerke - Protokolle
Apple Deployment Programs (DEP)
Anleitung für Administratoren
Anleitung für Administratoren
ZST ZIMO Software Tool © Ing. Arnold Hübsch 2005.
 Präsentation transkript:

App Literatur iPhone Entwicklung Push-Benachrichtigungen Universität zu Köln Medien zwischen Technologie und Gesellschaft Prof. Dr. Manfred Thaller WS 2012/13 Dominik Finkenberger

Inhalt Was sind Push-Benachrichtigungen? Bedingungen und Funktion Unterstützung für mehrere Provider Sicherheitsaspekte Einschränkungen von Push-Benachrichtigungen Ein Push-System einrichten Die Benachrichtigung

1. Was sind Push-Benachrichtigungen? Nachrichten eines externen Dienstes Client/Server-System Zustellung auf den Client  iPhone Anwendung Remote-Benachrichtigungssystem benötigt Push-Nachricht löst ein Badge, einen Klang, oder eine Benachrichtigung aus, Aktualisierung möglich

1. Was sind Push-Benachrichtigungen? Badge Text

1. Was sind Push-Benachrichtigungen? Vorteile: Nutzer muss die Anwendung nicht starten Akkukapazität wird geschont CPU-Ressourcen werden geschont Kanal für Webdienste (Kalender, News) Nutzer hat Entscheidungsfreiheit

2. Bedingungen und Funktion jeweilige Anwendung muss installiert sein das iPhone muss online sein Nutzer muss Remote-Nachrichten erlauben Benachrichtigung darf 256 Bytes nicht überschreiten

2. Bedingungen und Funktion Funktionsablauf: Server wird ausgelöst durch Ereignis (Mail,Termin) etc Push-Provider stellt Nachricht dem zentralen Apple-Server zu Server erstellt Benachrichtigungsdaten für ein bestimmtes Gerät, welches diese weitergibt

3. Unterstützung für mehrere Provider APNS ist ausgelegt für viele Provider-Verbindungen realisiert über Gateways Provider kann sofort Kontakt aufnehmen

4. Sicherheit Push-Provider benötigt SSL-Zertifikat (https) Token (bezeichnet Gerät und Anwendung) Ablauf: Eingang der authentifizierten Nachricht am APNS Verbindungseinrichtung zwischen APNS und iPhone onlineZustellung | offline  Warteschlange Zertifikat und Token sind sensible Informationen bei Missbrauch werden Zertifikate gesperrt Folge: Ausschluss der App aus dem App Store

5. Einschränkungen von Push-Benachrichtigungen u.U. falsche Reihenfolge der Nachrichten Nachrichten konkurrieren in der Warteschlange möglicherweise gehen Nachrichten verloren keine Mitteilung über verlorene Nachrichten deswegen: keine wesentlichen Informationen senden nur Hinweise, deren Ausbleiben keine Folgen hat

6. Ein Push-System einrichten eindeutigen Anwendungsbezeichner erstellen Bsp: com.domänenname.anwendungsname SSL-Zertifikat anfordern SSL-Zertifikat mit der App ID bezeichnen Push-spezifisches Profil anlegen eine Anwendung registrieren beim ersten Start meldet sich die App beim Remote-Benachrichtigungssystem an dabei werden die möglichen Benachrichtigungskanäle festgelegt (Badge, Sound, Text)

6. Ein Push-System einrichten das Geräte-Token abrufen bezeichnet mit SSL-Zertifikat eindeutig ein iPhone iPhone fordert Token von APNS an und übergibt es der Anwendung diese gibt das Token zurück an die Providerkomponente Erst wenn dem Push-Provider das Token vorliegt, kann dieser Benachrichtigungen senden

6. Ein Push-System einrichten

6. Ein Push-System einrichten auf Nachrichten reagieren läuft die Anwendung , hat die Benachrichtigung keine Auswirkung läuft nicht: Badge wird angezeigt Nachricht wird angezeigt Klickt der Nutzer nicht auf „Abbrechen“, sondern auf „Anzeigen“, so öffnet sich die betroffene Anwendung

7. Die Benachrichtigung Anwendung benötigt ein NSDictionary (aps) Benachrichtigung und Attribute in JSON Gesamte Nutzlast beträgt 256 Bytes Darin enthalten: - Nachrichtentext (string, Dictionary) - Buttonfunktion; bei Bedarf Beschriftung (string, Dictionary) - Sounddatei-Namen (Dateien müssen vorhanden sein) - Art des Badges (number)

7. Die Benachrichtigung Nutzlast Beispiel 1: { "aps" : { "alert" : "Message received from Bob" }} Benachrichtigung wird angezeigt, außerdem erscheinen die Buttons „Anzeigen“ und „Abbrechen“

7. Die Benachrichtigung Nutzlast Beispiel 2: { "aps" : { "alert" : { "body" : "Bob wants to play poker", "action-loc-key" : "PLAY" }, "badge" : 5, } Nachricht wird angezeigt, statt „Anzeigen“ erscheint auf dem Button „Spielen“, Badge mit einer 5 wird angezeigt Besonderheit: PLAY ist eine Lokalisierungs-Variable passt sich der Benutzersprache an

7. Die Benachrichtigung Nutzlast Beispiel 3: { „aps“ : "alert" : { "loc-key" : "GAME_PLAY_REQUEST _FORMAT", "loc-args" : [ "Jenna", "Frank"] , ’’sound“ : “play.aiff“ }} Localizable.strings im .lproj Ordner der aktuellen Sprache: "GAME_PLAY_REQUEST_FORMAT" = "%@ and %@ have invited you to play Monopoly";

7. Die Benachrichtigung Nutzlast Beispiel 3: lproj-Ordner enthält für jede Sprache einen Unterordner Localizable.strings enthält wiederum Schlüssel-Wert-Paare Nachricht: Jenna and Frank have invited you to play monopoly.

7. Die Benachrichtigung Die mit iOS 4.0 neu-eingeführte Eigenschaft „launch-image“ ermöglicht Darstellung eines Bildes App gelöscht, was nun?  Apple verfolgt alle Zustellversuche und gibt dem Benutzer passives Feedback Ist eine App deinstalliert worden, kommt sie nach mehrmaligen fehlgeschlagenen Versuchen auf eine Liste Entwickler muss eigenständig die betroffenen Geräte-Token von seiner Push-Liste nehmen

7. Die Benachrichtigung Hinweise an Entwickler: Der Push-Dienst wird über APNS verteilt, ABER die Kommunikation zum APNS ist Sache des Entwicklers Größe des Kundenstamms ist zu berücksichtigen, da die Dienstschicht ebenso vom Entwickler bereitzustellen ist Bei 10.000 Nutzern und 15-minütigen Updates ergeben sich 1.000.000 Zugriffe über Push am Tag, der Zeitraum zwischen Aktualisierungen ist jedoch oft kleiner  große Rechenlast, die schwer zu bewältigen ist Gut überlegen, ob man Push wirklich braucht, da ein einmal angebotener Dienst vom Benutzer auf Dauer erwartet wird System einrichten, dass mit dem Benutzerstamm wachsen kann

Quellen Sadun, Erica: Das große iPhone-Entwicklerbuch https://developer.apple.com/library/ios/#documentation

Noch Fragen? Vielen Dank!