4. Abstract
• Operation Developer Love: Hilft.
• Codebasis: Besser.
• Heute: Für jeden was dabei.
• Anregungen: Gerne gesehen.
• Fragen: Am Ende.
Seite 4 Dezember 7, 2011
9. Problem
• Flash-Einbindung: transparent oder
opaque
• Transparent-Mode: Kein @-Zeichen
im Firefox
• Window-Mode: Flash im
Vordergrund – keine Overlays
• Popup-Elemente: Geblockt, da kein
onclick-Event ausgelöst wurde
è Kein @ in Flash!
Seite 9 Dezember 7, 2011
10. Lösung 1: Unsichtbare Inputs und Javascript
• Flash in transparent eingebunden
• Unsichtbare Input-Felder über dem Flash
• Flash aktiviert Javascript zum Einblenden
• Javascript schickt Eingabe zurück
• Problem an der Lösung: In Flash eingebundene Schriften.
• Man könnte jeden einzelnen Buchstaben abgreifen
• Aber: Cursorposition und Darstellung
Seite 10 Dezember 7, 2011
11. Lösung 2: Das doppelte Lottchen
• E-Mail-Adresse wird nicht in transparent-Flash eingegeben
• Eigener Layer zur Eingabe
• Flash in window-Mode
• HTML
• Javascript wechselt die Layer-Positionen
• Müssen beide schon sichtbar sein, sonst Lag.
• Saubere Lösung, wenn keine andere Möglichkeit für den Kunden akzeptabel ist
Seite 11 Dezember 7, 2011
25. Problem: Scrollbars in Reitern
• Ursachen:
• Javascript SDK resized nicht richtig.
• Content wenige Pixel zu groß
• Check: Per HTTPS eingebunden?
Seite 25 Dezember 7, 2011
26. Lösung: Overflow hidden / feste Größe
FB.Canvas.setAutoResize();!
FB.Event.subscribe('xfbml.render',
function(response) {!
FB.Canvas.setAutoResize();!
});!
!
!
body {!
!margin:0;!
!padding:0; !
!height:1420px;!
!width:520px;!
!overflow:hidden;!
!}!
Seite 26 Dezember 7, 2011
28. Das Problem
• Der Kunde möchte die Inhalte bearbeiten können
• Vergisst aber ständig den Zugang zum Backend
Seite 28 Dezember 7, 2011
29. Lösungen
• Eigenständiges Back-End
• Scaffolding
• Universell
• CMS-Anbindung
• Abfrage auf Page-Administrator
• Links zum Löschen/Editieren direkt in Reiter
• Einheitliche Lösung
• Kein eigenes Back-End mit eigenem Design nötig
Seite 29 Dezember 7, 2011
36. Problem
• Profilbildgeneratoren
• Fotowettbewerbe
• User möchten ihre Bilder auswählen
• Die wichtigsten Bilder sind ohnehin in Facebook
• Facebook bietet dafür kein Widget
Seite 36 Dezember 7, 2011
39. Problem
• Riesige Batch-Requests werden nicht ausgeführt wegen Limit
• Use-Cases:
• Alle je geposteten Links von allen Freunden
• Auslesen aller Freunde seiner Freunde
Seite 39 Dezember 7, 2011
42. Problem
• Die Konzeption sagt: Es müssen genau 3 Leute eingeladen werden
• Früher: App-Requests ohne Nutzer-Limits
• Nur Listen-Vorschläge
• Facebook bietet keine reine Freund-Auswahl
Seite 42 Dezember 7, 2011
43. Lösung 1: Mechanik ändern
• Limit entfernen
• Beliebig viele Leute einladen lassen können
• First Come – First Served
• Requests gehen unter
• Mehr Reichweite
Seite 43 Dezember 7, 2011
48. Problem
• Man darf per Like-Buttons keine Voting-Gewinner bestimmen
• Voting ohne Installation sehr Betrugsanfällig
• Installation allerdings Hürde
Seite 48 Dezember 7, 2011
49. Lösung: Evercookie
• Standard HTTP Cookies
• Local Shared Objects (Flash Cookies)
• Silverlight Isolated Storage
• Storing cookies in RGB values of auto-generated, force-cached PNGs using HTML5
Canvas tag to read pixels (cookies) back out
• Storing cookies in Web History
• Storing cookies in HTTP ETags
• Storing cookies in Web cache
• window.name caching
• Internet Explorer userData storage
• HTML5 Session Storage
• HTML5 Local Storage
• HTML5 Global Storage
• HTML5 Database Storage via SQLite
Seite 49 Dezember 7, 2011
51. Was der Kunde bekommt, wenn er einen Tab
verlinkt:
Seite 51 Dezember 7, 2011
52. Was der Kunde eigentlich möchte:
Seite 52 Dezember 7, 2011
53. Lösung
• OG-Metatags und eine Weiterleitung
• Nebeneffekte
• Durch die Umleitung Favoritenlistung auch von Reitern
• Server-Root macht immer etwas
• OG-Tags sollte man so oder so setzen
• Wiederverwendbar
Seite 53 Dezember 7, 2011
55. Zeit für Fragen!
Kontakt:
Klaus Breyer
kb@buddybrand.de
http://facebook.com/klausbreyer
http://twitter.com/klausbreyer
We are hiring:
http://facebook.com/buddybrand
http://buddybrand.de
jobs@buddybrand.de
Seite 55 Dezember 7, 2011
56. Impressum
buddybrand GmbH
Klaus Breyer
Greifenhagener Straße 63
10437 Berlin
T.: +49 [0]30 4467793 10
F: +49 [0]30 446779325
Die in dieser Präsentation dokumentierten Gedanken und Ideen sind stets Eigentum der
buddybrand GmbH. Der gesamte Inhalt ist geschützt durch das deutsche Urheberrecht.
Eine auch nur auszugsweise Nutzung oder Weitergabe an Dritte bedarf in jedem Fall der
ausdrücklichen, schriftlichen Genehmigung durch die buddybrand GmbH.
Seite 56 Dezember 7, 2011