Make your App Social with BBM

Hier ist @leaschnherr, eine Studentin die mit @Klajili im Tech Center Bochum arbeitet. Ich werde euch heute zeigen wie man eine App auf eine sehr einfache Art und Weise bei BBM registriert. Das hilft seine App zu verbreiten und die Downloadzahlen zu erhöhen.

Screen Shot 2013-10-31 at 5.05.45 PMDas erste was getan werden muss, ist die Erlaubnis in der bar-descriptor.xml Datei zu setzten. Wenn du Momentics benutzt, kannst du diese einfach durch einen Doppelklick öffnen und unter dem Application Tab findest du alle Permissions.

Als nächstes muss noch die BBM Library zum Projekt hinzugefügt werden, z. b. indem die Zeile LIBS += -lbbplatformbbm  in die .pro Datei kopiert wird. Alternativ kann man auch auf das Projekt rechtsklicken und Project->Configure->Add Library…  auswählen. Dann auf Standard BlackBerry platform library und als nächstes nach ”libbbplatformbbm” suchen. Wähle diese Library und klicke auf finish. Das ändert automatisch die .pri Datei.

Um BBM zu nutzen braucht man eine UUID. Diese wird benötigt, um deine App bei BBM zu identifizieren. So eine bekommst du z. B. hier: http://www.guidgenerator.com. Jede App braucht ihre eigene einzigartige UUID und es sollte die gleiche verwendet werden, wenn eine neue Version der App veröffentlicht wird.

Los gehts es mit main.cpp:

wie du siehst werden nur einige Zeilen benötigt. Neben der UUID kann eine einfache GUI erzeugt werden um den Benutzer zu zeigen was passiert. Nun werden nur noch drei weitere Zeilen benötigt. Das Erstellen der Klasse Registration und der Klasse Profile (Diese Klasse wird später benötigt um das Profil anzuzeigen). Die dritte Zeile verbindet das Signal der Registration Klasse (dieses wird gesendet, wenn die Registrierung erfolgreich war) und das Slot welches die nächste Page anzeigt.

Die Klasse Registration  registriert die App bei BBM. Dieser Schritt wird nur beim ersten Ausführen der App durchgeführt. Somit muss im erste Teil gecheckt werden in welchem Zustand sich die App befindet. Hierfür wir die Klasse Context und ihr Objekt  RegistrationState verwendet.  RegistrationState beinhaltet ein Enum mit 15 möglichen Zuständen (Die möglichen Zustände sind hier dokumentiert). In der App muss der aktuelle Zustand herausgefunden werden und abhängig von diesem die App registriert werden. Hier wurde das über eine switch-case-Anweisung gemacht, allerdings nicht alle möglichen Zustände berücksichtigt. Stattdessen wurde eine qDebug Ausgabe verwendet, um den Registrierungprozess zu verfolgen und, für den Fall, zusehen, was schief gegangen ist.

Da der Zustand sich mehrmals ändern kann muss registrationStatus() als Slot mit dem Signal registerStateUpdated() der Context Klasse verbunden werden.

Um den Prozess zu starten muss registrationStatus() einmal aufgerufen werden. Jetzt wird die App entweder die Registrierung anfordern oder ein Signal aussenden, was anzeigt, dass sie bereits registriert ist. Die Dritte Möglichkeit ist, dass ein Fehler aufgetreten ist. In diesem Fall muss die Konsolenausgabe gelesen werden um den Fehler zu beseitigen. Wenn alles gut läuft zeigt BBM eine Toast Nachricht an.

IMG_00000015

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">