Archive for the 'Blackberry' Category

24th Nov 2011

WebWorks Push Application

Gerade die “Push” Funktionalität von RIM funktioniert wunderbar und schont den Akku der Clients. Seit dem SDK 2.1 gibt es Änderungen in der API für WebWorks Anwendungen und deswegen möchte ich ein kleines Beispiel veröffentlichen um Push Nachrichten zu empfangen. Der Code umfasst nur die Applikation für den Blackberry – nicht um einen Push an RIM zu senden.

Die neue API macht es einem viel einfacher, weil man nicht mehr verschiedene XMLRequests machen muss. Außerdem kann man endlich von jeder IP auf die Testserver zugreifen und muss nicht eine freischalten. Trotzdem muss man sich für die “Push Essentials” noch registrieren und bekommt einen Port und Id für die App zugewiesen. Die Dokumentation wird auch immer besser…

index.html

<!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd”>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″>
<meta name=”viewport” content=”width=device-width,height=device-height,user-scalable=no,initial-scale=1.0″>
<script type=”text/javascript” src=”js/action.js”></script>
<body style=”margin: 0em; padding: 0em; border-style: none; background:white;”>
<button id=”Register” onclick=”openBISPushListener();”>openBISPushListener</button><br>
<button id=”De-Register” onclick=”cancelSubscription();”>cancelSubscription</button><br>
<div id=”resultDiv”></div>
</body>
</html>

action.js

var port = YOURPORT;
var serverUrl = “http://pushapi.eval.blackberry.com”;
var appId = “YOURAPPID”;
var max = 100;
var wakeUpPage = “index.html”;

function cancelSubscription() {
blackberry.push.closePushListener();
}

function openBISPushListener() {
try {
var ops = {port : port, appId : appId, serverUrl : serverUrl, wakeUpPage : wakeUpPage, maxQueueCap : max};
blackberry.push.openBISPushListener(ops, onData, onRegister, onSimChange);
}
catch (err) {
alert(err);
}
}

function onRegister(status) {
if (status == 0) {
alert(“success”);
}
else if (status == 1) {
alert(“network error”);
}
else if (status == 2) {
alert(“rejected by server”);
}
else if (status == 3) {
alert(“invalid parameters”);
}
else if (status == -1) {
alert(“general error”);
}
else {
alert(“unknown status”);
}
}

function onData(data) {
var resultDiv = document.getElementById(“resultDiv”);
try {
resultDiv.innerHTML += “<br>” + blackberry.utils.blobToString(data.payload);
return 0; //indicate acceptance of payload for reliable push
}
catch (err) {
alert(err);
}
}

function onSimChange() {
var resultDiv = document.getElementById(“resultDiv”);
resultDiv.innerHTML += “<br>” + “SIM card is changed!”;
}

Posted in Blackberry | No Comments »

22nd Oct 2011

Blackberry Playbook und Linux

Damit man auf die SMB Freigabe auf dem Playbook unter Linux zugreifen kann muss man ein bisschen was machen. Als erstes müssen wir auf dem Playbook die Datenfreigabe aktivieren:

Settings -> Storage & Sharing -> USB Connections -> Connect to Mac

Dann muss man noch “File Sharing” und “Password Protect” aktivieren und ein Passwort vergeben. Dann können wir auch schon das Playbook per USB verbinden. Mittels “ifconfig -a” sollten wir jetzt ein usb0 Gerät sehen:

usb0: flags=4098<BROADCAST,MULTICAST>  mtu 1500  metric 1
ether XX:XX:XX:XX:XX:XX  txqueuelen 1000  (Ethernet)
RX packets 0  bytes 0 (0.0 B)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 0  bytes 0 (0.0 B)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Ein Gerät ohne IP hilft uns nicht wirklich, also lassen wir dhcpd die Arbeit machen:

[root@host ~]# dhcpcd usb0
dhcpcd[9533]: version 5.2.12 starting
dhcpcd[9533]: usb0: rebinding lease of 169.254.91.114
dhcpcd[9533]: usb0: NAK: from 169.254.74.157
dhcpcd[9533]: usb0: broadcasting for a lease
dhcpcd[9533]: usb0: offered 169.254.74.158 from 169.254.74.157
dhcpcd[9533]: usb0: acknowledged 169.254.74.158 from 169.254.74.157
dhcpcd[9533]: usb0: checking for 169.254.74.158
dhcpcd[9533]: usb0: leased 169.254.74.158 for 43200 seconds
dhcpcd[9575]: usb0: usb0: MTU set to 1500
dhcpcd[9533]: forked to background, child pid 9590

usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500  metric 1
inet 169.254.74.158  netmask 255.255.255.252  broadcast 169.254.74.159
inet6 XXXX::XXXX:XXXX:XXXX:XXXX  prefixlen 64  scopeid 0×20<link>
ether XX:XX:XX:XX:XX:XX  txqueuelen 1000  (Ethernet)
RX packets 71  bytes 12014 (11.7 KiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 16  bytes 1880 (1.8 KiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Das “mini subnet” das wir bekommen ändert sich jedes mal. Das muss man beachten wenn man ein Script schreibt. Nachdem wir jetzt eine IP haben können wir die Freigabe mounten:

mount -t cifs -o username=playbook,password=XXX,rw //169.254.74.157/media /mnt/playbook

XXX spiegelt das Passwort wieder welches wir auf dem Playbook festgelegt haben. Und vola wir können Daten kopieren.

Ich habe mir ein kleines Script geschrieben das mir die Arbeit abnimmt. Download: playbook

Posted in Blackberry, Linux/BSD | No Comments »

22nd Oct 2011

Blackberry Playbook Review

Den Ausfall von RIMs Netzwerk im Oktober hat mit Sicherheit jeder mitbekommen und hatte was zu Lachen. Jedenfalls wenn er nicht einen Blackberry benutzt. Knapp vier Tage ging nichts auf dem Blackberry und ich habe so viel wie im ganzen Monat Telefoniert und SMS verschickt. Wäre das Netzwerk ein paar Tage vorher ausgefallen wäre ich Orientierungslos in den Wäldern von Schweden unterwegs und hätte ein ernsthaftes Problem. Ein tolles Beispiel wie abhängig wir doch von der Technik sind.

Zur gleichen Zeit gab es ein Angebot in UK von digigood um ein Playbook 16GB günstig zu erwerben. Da musste ich einfach zuschlagen. Hatte ja nichts anderes zu tun ;) Das Gerät war auch nach vier Tagen in meinen Händen und ich war überrascht wie schwer es ist. Man fühlt das man etwas hochwertiges in der Hand hat. Wohl eher in den Händen, denn lange kann ich es nicht in einer Hand halten. Das geht nur wenn ich es auf den Fingern liegen habe. Die größe macht es aber auch nicht zu einem Einhandgerät sondern kann super mit zwei Händen gehalten und bedient werden. Ich finde das 7″ eine super Größe für ein Tablet ist dass man gerne mit nimmt. Das iPad fühlt sich jetzt wie ein Schlachtschiff an und ist viel zu groß. Fürs Sofa reicht es aber immer noch.

Nach dem ersten Einschalten ging es direkt zur Einrichtung von dem W-Lan und anmelden mit der Blackberry ID. Danach gab es eine kleine Einführung in die Bedienung und die Installation der letzten Firmware. Alles in allem keine 15 Minuten. Gefolgt von der Kopplung mit meinem Bold war alles sehr schnell gemacht.

Ich bin immer noch in der Erkundungsphase aber wollte schon ein paar Eindrücke loswerden und versuche nicht zu voreingenommen zu sein. Gekauft habe ich es aus einer Laune heraus und wollte eigentlich warten bis es ein Gerät mit 3G gibt. Ich bereue es aber auf keinen Fall. Das Playbook fühlt sich sehr gut in der Hand an und die Größe ist Fantastisch für ein Tablet auf Reisen. Es könnte sogar mein Kindle 3G als Reisebegleiter ablösen, aber das wird sich noch zeigen. Das Betriebssystem QNX läuft ohne ruckler oder hacken. Ich musste noch nie neu starten und die Bedienung ist sehr Intuitive. Die GUI macht echt Spass und sieht gut aus.

Die Installierten Apps wie Facebook, Docs to Go, NFS, Wetter, Music, Video und so weiter machen wofür sie geschrieben wurden. Der Browser hat mich sehr überrascht. Ich bin den RIM OS7 Browser gewöhnt und der ist nicht wirklich der beste. Die Seiten werden schnell aufgebaut, gutes scrollen und Flash funktioniert gut. Der sollte so schnell wie möglich auf meinen Bold… Der andere teil der Welt der Applikationen auf dem Playbook sieht eher nichtig aus. Es gibt nicht wirklich viele Apps und von einer guten Twitter App ist keine in Sicht. Die einzige einigermaßen gute und funktionierende ist TweetBook und kostet ein halbes Vermögen. Dafür gibt es aber auch Apps wie einen rss reader “glimps” den ich fantastisch finde oder auch InstaPhoto. Es besteht Nachholbedarf und ich denke RIM weiss das.

Wie ich schon schrieb ist die Hardware sehr gut verarbeitet und fühlt sich nach etwas an. Das Display ist sehr Hell und die Farben sehen ordentlich aus. Die Batterie hingegen hat mich bis jetzt noch nicht überzeugt. Ich schätze das es maximal 5 Stunden mit W-Lan und Bridge überlebt. Das Laden der Batterie über USB am Computer ist so langsam da kann man die Prozente mitlesen und mit frischen Strom aus der Steckdose dauert es auch ein bisschen. Das ist eigentlich ein “Killerargument” und RIM muss da unbedingt was ändern. Hoffentlich wird das noch besser. Ich werde es weiter beobachten. Die Kamera habe ich noch nicht wirklich getestet und den Video Chat auch noch nicht.

Die Blackberry Bridge bringt Email, BBM und PIM auf das Playbook. Das funktioniert und wenn man das Playbook hochkant hält kann man mit der Daumentechnik sogar recht fix tippen. Als Blackberry Besitzer finde ich die Lösung nicht schlecht, aber für alle ohne Blackberry sollten warten bis RIM eine Firmware veröffentlicht das auch native Email und PIM beinhaltet. Ich Spiele jetzt weiter Samurai 2 und mal schauen wie sich das Playbook im Alltag schlägt…

UPDATE:

Das Playbook besitze ich nun ein paar Tage und es war schon mit mir unterwegs. Ich bin absolut begeistert von der Größe des Gerätes. Genau wie das Kindle kann man das Playbook überall mit hinnehmen und es ist nicht schwer. Das iPad war nur ein Sofa-Gerät und es verlässt mich in ein paar Stunden. Die Bedienung ist genial, Apps gibt es auch genug, Flash funktioniert und das Display ist super. In einer Hand kann man es auch halten und zum Spielen ist es gut mit zwei Händen zu bedienen. Ich kann das Gerät einfach nur empfehlen. Top!

Posted in Blackberry, News | 2 Comments »

18th Oct 2011

WebWorks XML Parser

XML Parser in Javascript sind schnell geschrieben. Gehen wir von folgender Struktur aus:

<xml>
<name>Nadine</name>
<id>15</id>
</xml>

Je nachdem wie man die Datei einließt muss man das vor dem Parsen machen. Im Beispiel ist das “data”:

var parser = new DOMParser();
var doc = parser.parseFromString(blackberry.utils.blobToString(data, ‘UTF-8′), ‘text/xml’);

var name = doc.getElementsByTagName(“name”)[0].childNodes[0].nodeValue;
var id = doc.getElementsByTagName(“id”)[0].childNodes[0].nodeValue;

Das war es. Pures Javascript.

Posted in Blackberry | No Comments »

10th Sep 2011

Mein Blackberry 9900 Review

Nach einer gefühlten Ewigkeit kann ich endlich sagen das es ein Blackberry Bold 9900 zu mir geschafft hat. Es hat sich aber dennoch gelohnt zu warten. Das Gerät ist der Wahnsinn. Es hat wieder fast die Größe des ursprünglichen Bolds 9000er und somit eine größere Tastatur als der 9700er. Der Bold ist glaube ich knapp einen halben Zentimeter dünner und somit der dünnste Blackberry den es bis jetzt gibt. Das Display ist auch gewachsen und kann mit einer super Grafik glänzen. Auch wenn wieder alles größer geworden ist so liegt das Gerät gut in der Hand. Um aber auf dem Touchpad ordentlich was zu treffen sollte man das Gerät schon in beide Hände nehmen, weil man sonst einen Fingerspagat machen muss. Das “neue” Blackberry OS7 ist nur ein kleines Update von dem OS6 und wie ich finde hat es keine eigene Versionsnummer verdient.

Wenn man das Gerät aber erst etwas später bekommt, kann man sicher sein das es schon ein, zwei neue Firmwares gibt. Der Upgrade Prozess war diesmal aber ungemein schwieriger bzw. nervtötender weil es irgendwelche Treiber Probleme mit Windows 7 gibt. Um das zu Beheben habe ich den Desktop Manager installiert und danach konnte ich die Firmware upgraden wie gewohnt. Ein andere Tipp (Danke @DerBastiS4) ist das Blackberry anzuschließen, Treiber im Device Manager zu entfernen und dann mittels dem Windowsupdate nachinstallieren.

Es gibt auch schon eine Firmware mit Unterstützung zur Japanischen Eingabe. Das IME hat sich ein bisschen geändert und ähnelt jetzt ein bisschen mehr dem von einem Computer. Die Felder sind auch größer zum auswählen. Ich bin mir noch nicht sicher ob man das wirklich nötig war.

Das Gerät habe ich erst seit Freitag und somit kann ich nicht wirklich sagen wie schlecht der Akku ist. Ich werde in den nächsten Tagen mehr dazu sagen können.

UPDATE:

Nach einer Woche mit dem neuen Blackberry kann ich sagen, dass es der beste Blackberry ist den ich je in der Hand hatte. Es ist eine super Weiterentwicklung vom ursprünglichen Bold. Erstmals kann ich sagen dass der 9900er richtig schnell ist. Der Browser und Apps sind normal zu benutzen und machen Spaß. Die Interaktion mit Touchscreen und Tastatur ist perfekt. Man navigiert mit Touch und kann wie gewohnt über die Tastatur schnell Tippen. Ich will es nicht mehr missen. Der Akku ist mit der .353 Firmware absolut in Ordnung. Einen Tag hält er bei regelmäßiger Benutzung aus und Abends sind noch zwischen 50 und 35 Prozent verfügbar. Mit jeder Firmware wird das sicherlich noch besser. RIM OS7 ist jetzt nicht wirklich viel anders als OS6, aber viele kleine nervende Sachen kann man selber einstellen.

Wer auf der Suche nach einem ultimativen Kommunikationsgerät ist, dann ist der Bold 9900 genau richtig. Dank Push Technologie sind Email,Twitter,Facebook,BBM und was es nicht noch alles gibt super schnell auf dem Blackberry.

Posted in Blackberry, News | No Comments »

15th Jul 2011

Blackberry WebWorks Umgebung

So langsam läuft der Support für das Eclipse Plugin bei RIM aus und ich sollte auf WebWorks umsteigen. Leider geht das nicht einfach so, weil RIM momentan in ihrer “transition” ist. Das heist es gibt kein wirkliches IDE. Die Entwicklerumgebung baut sich aus WebWorks SDK, Blackberry Simulator (oder Ripple) und einem Editor zusammen. Nachdem wir nun wissen was wir brauchen fangen wir erst einmal mit dem herunterladen aller benötigten Dateien:

  1. Java JDK
  2. WebWorks SDK
  3. Blackberry Emulator
  4. Editor

Das Java SDK und WebWorks SDK gibt es auf der Widget Seite und auf einer anderen den  Emulator. Alles heruntergeladen und Installiert kann es schon losgehen. Als Editor probiere ich Notepad++ aus.

Um erst einmal mit den neuen Tools ein bisschen zu Spielen will ich eine vorhandene App neu verpacken. Nach gefühlten 13 Stunden habe ich dann eine Anleitung im Forum gefunden. Zunächst wollte ich aber erst noch meine Keys auf dem neuen Computer aktivieren. Sollte eigentlich recht einfach sein wie man es hier nachlesen kann, aber leider bekomme ich einen Fehler das ich keine weiteren Benutzer mehr einrichten kann.

Unable to register client ‘BLA’ because  there are no more registration attempts.

Darum werde ich mich später kümmern, aber wenn das heißen sollte das ich für einen neuen Computer neue Keys brauche dann finde ich das schon Fies. Die Keys gibt es jetzt kostenlos. Wohoo!

Versuchen wir also eine Widget App die ich in Eclipse (+ Plugin) erstellt habe unter WebWorks zu erstellen ohne eine kleinste Änderung vorgenommen zu haben. Der Prozess hat sich auf die CMD verlagert.

  1. Zip datei mit dem Code erstellen (Dateien müssen in Root sein).
  2. App erstellen (Beispiel stammt aus der Anleitung weiter oben)
cd "C:\Program Files\Research In Motion\BlackBerry WebWorks Packager"
bbwp "c:\WebWorks\AppFolder\MeineZipDatei.zip"

Und es hat ohne Probleme funktioniert meinen alten code mit WebWorks neu zu Compilieren. Danach konnte ich das Programm in dem Emulator starten und funktionierte wie es geschrieben war :) Leider nach wie vor nur unter Windows. Mehr später…

 

Posted in Blackberry, Fun | No Comments »

12th Jan 2011

RIM OS6 und Japanische Eingabe auf dem Blackberry 9700

Es gleicht fast einem Wunder, aber RIM hat es tatsächlich geschafft mit dem ersten Offiziellen Release von OS6 eine funktionierende Japanische Eingabe für den Bold 9700 mit QWERTZ Tastatur zu veröffentlichen. Nachdem das beim letzten mal über ein Jahr gedauert hat klappt es plötzlich auf Anhieb. Vielen Dank.

Download: 9700jAsia_PBr6.0.0_rel1478_PL6.6.0.86_A6.0.0.380_Vodafone_Essar_Limited.exe

Es gibt schon Leaks mit einer höheren Versionsnummer und ein paar mehr Bugfix. Ich habe mit die .380 nun auf meinen Installiert und bin super zufrieden. Es läuft stabil und die Performance stimmt auch. Was mich am meisten bei OS6 begeistert ist die “Universal Search”, “Social Feeds” und die neuen “Notifications”. Der Blackberry ist und bleibt einfach ein Nachrichten-Genie.

Posted in Blackberry, Japan, News | No Comments »

02nd Jul 2010

Blackberry Widget – Update Funktion

Auf dem Blackberry kann man zum Glück noch Programme installieren die nicht aus der App World kommen. Entweder man installiert sie OTA (OverTheAir) oder mit dem Blackberry Manager. Ich denke das jeder lieber die OTA Variante wählt. Wenn man eine App über App World heruntergeladen und Installiert hat, dann wird man auch über neue Updates informiert. Das Funktioniert leider nicht bei Apps die man OTA von irgendwo anders installiert hat und so muss jede App eine eigene Update Funktion mit sich bringen. Dazu habe ich einen kleinen XML Parser geschrieben der auf Abruf (oder Automatisiert – je nachdem wie man es einbaut) nachschauen kann ob es eine neue Version vorhanden ist. Dafür muss man selber nur in der App das folgende Script einbauen und auf dem Server die passende xml Datei hinterlegen und updaten wenn man eine neue Veröffentlichen will.

Die XML Datei sieht bei mir folgendermaßen aus:

<version>
<weatherme version=”1.0.0.4″ url=”http://blackberry.itbert.de/weatherme/weatherme.jad”></weatherme>
<wmlive version=”1.0.0.3″ url=”http://blackberry.itbert.de/wmlive/wmlive.jad”></wmlive>
<wadokulive version=”1.0.0.4″ url=”http://blackberry.itbert.de/wadokuonline/wadokuonline.jad”></wadokulive>
</version>

An sich ganz einfach. Für jede Anwendung kann man die Version und die URL des Downloads angeben. Was braucht man mehr? Das Javascript sieht auch nicht viel komplizierter aus:

var AppVersion = “1.0.0.2″;
var AppName = “weatherme”;

function checkUpdates () {

var req = new XMLHttpRequest();
req.open(“GET”, “http://blackberry.itbert.de/finger/version.xml”, false);
req.send(null);

if (req) {
version = req.responseXML.getElementsByTagName(AppName).item(0).getAttribute(“version”);
url = req.responseXML.getElementsByTagName(AppName).item(0).getAttribute(“url”);

if ( AppVersion < version ) {
if (confirm(‘Do you want Upgrade to version ‘+version+’?'))
{
var args = new blackberry.invoke.BrowserArguments(url);
blackberry.invoke.invoke(blackberry.invoke.APP_BROWSER, args);
}
}

}
}

Damit das ganze auch Funktioniert braucht man folgende Berechtigungen in der config.xml

<feature id=”blackberry.invoke” required=”true” version=”1.0.0.0″/>
<feature id=”blackberry.invoke.BrowserArguments” required=”true” version=”1.0.0.0″/>
<feature id=”blackberry.identity” required=”true” version=”1.0.0.0″/>
<feature id=”blackberry.ui.dialog” required=”true” version=”1.0.0.0″/>
<feature id=”blackberry.app” required=”true” version=”1.0.0.0″/>

Jetzt muss man nur noch die Funktion in einen Button einbauen oder bei jedem Start der App aufrufen.

<script language=”javascript”  type=”text/javascript”>
checkUpdates ();
</script>

Das ganze als Paket gibt es hier und bei Gelegenheit werde ich das in meine bestehenden Apps einbauen, aber vorher verdrücke ich mich in das hoffentlich kühlere Wien.

Posted in Blackberry | 2 Comments »

01st Jul 2010

Blackberry Prepaid Service [Updated: 2010-07-25]

In Deutschland ist es eigentlich nur möglich den Blackberry Service mit einem Vertrag zu benutzen. O2O könnte man als Prepaid zählen lassen, aber ich will hier auf die traditionellen Prepaid Tarife eingehen. Im Ausland hingeben gibt es so langsam ein bisschen Bewegung und es werden Blackberry Services für Prepaid angeboten. Es sind noch nicht viele, aber es werden langsam immer mehr.

Wie man sehen kann ist es noch sehr selten einen Blackberry Prepaid Tarif anzutreffen, aber so langsam…

Posted in Blackberry | No Comments »

20th Jun 2010

Blackberry Widget – About Page

Bei jedem Programm sollte eigentlich immer Platz für ein paar Informationen sein. Ich habe mir die Mühe gemacht und ein kleines Template geschrieben. Es ließt automatisch die Einstellungen aus der config.xml aus (die man ohnehin Eintragen sollte) und erstellt einen neuen Menüpunkt. Somit kann man immer schnell auf die Seite zugreifen und hat alle Informationen auf einen Blick parat.

Einfach Herunterladen, in dem gewünschten Widget entpacken und das Javascript einbinden. Zum Beispiel im header:

<script type=”text/javascript” src=”about/js/about.js”></script>

Fertig. Schöne UI Beispiele gibt es im Forum bei RIM.

Posted in Blackberry | No Comments »

18th Jun 2010

Blackberry Widget – RSS Parser

Solange ich noch auf meine Zugangsdaten für die Pushservices warte bediene Ich mich momentan anderen Pull Techniken. Eine davon verbreitete Möglichkeit ist dabei RSS. Fast jede Internetseite hat RSS und ggf. noch eine sehr kluge. Normale Browser erlauben keine cross domains. Das heist dass die zu parsende Datei auch local liegen muss und man die nicht erst von einem anderen Server holen. Bei den Widgets gibt es die Möglichkeit cross domains zu benutzen in dem man die gewünschte/n Domains freigibt. Also kann man sich bequem Informationen auf den BB Pullen.

Fangen wir also mit einem normalen RSS an und mal schauen was noch kommt… Ich hab es leider nicht selber geschrieben und weiss nicht mehr wo ich es gefunden habe :( Die Credits gehen also an Anonymous.

<!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd”>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″>
<meta name=”viewport” id=”viewport” content=”initial-scale=1.0,user-scalable=no”>
<title>RSS Beispiel</title>
</head>
<script language=”javascript”  type=”text/javascript”>

var RSSRequestObject = false; // XMLHttpRequest Object
var Backend = ‘http://news.google.de/news?pz=1&cf=all&ned=de&hl=de&q=blackberry&cf=all&output=rss’; // Backend url
window.setInterval(“update_timer()”, 1200000); // update the data every 20 min
RSSRequestObject = new XMLHttpRequest();

/*
* onreadystatechange function
*/
function ReqChange() {

// If data received correctly
if (RSSRequestObject.readyState==4) {

// if data is valid
if (RSSRequestObject.responseText.indexOf(‘invalid’) == -1)
{
// Parsing RSS
var node = RSSRequestObject.responseXML.documentElement;

// Get Channel information
var channel = node.getElementsByTagName(‘channel’).item(0);
var title = channel.getElementsByTagName(‘title’).item(0).firstChild.data;
var link = channel.getElementsByTagName(‘link’).item(0).firstChild.data;

content = ‘<div style=”padding-top:2px; margin-bottom: 1px; background:grey;”></div>’;

// Browse items
var items = channel.getElementsByTagName(‘item’);
for (var n=0; n < items.length; n++)
{
var itemTitle = items[n].getElementsByTagName(‘title’).item(0).firstChild.data;
var itemLink = items[n].getElementsByTagName(‘link’).item(0).firstChild.data;
var itemDesc = items[n].getElementsByTagName(‘description’).item(0).firstChild.data;

content += ‘<a href=”‘+itemLink+’” style=”padding-left: 17px; display: block; background:#fff; text-decoration: none; color: black; “>’+itemTitle+’</a>’;
content += ‘<div style=”margin-left: 15px; padding-top:1px; background:#d5d3d3;>”></div>’;

}

// content += ‘<hr/>’;
// Display the result
document.getElementById(“ajaxreader”).innerHTML = content;

// Tell the reader the everything is done
document.getElementById(“status”).innerHTML = “Done.”;

}
else {
// Tell the reader that there was error requesting data
document.getElementById(“status”).innerHTML = “<div>Error requesting data.<div>”;
}

HideShow(‘status’);
}

}

/*
* Main AJAX RSS reader request
*/
function RSSRequest() {

// change the status to requesting data
HideShow(‘status’);
document.getElementById(“status”).innerHTML = “Requesting data …”;

// Prepare the request
RSSRequestObject.open(“GET”, Backend , true);
// Set the onreadystatechange function
RSSRequestObject.onreadystatechange = ReqChange;
// Send
RSSRequestObject.send(null);
}

/*
* Timer
*/
function update_timer() {
RSSRequest();
}

function HideShow(id){
var el = GetObject(id);
if(el.style.display==”none”)
el.style.display=”;
else
el.style.display=’none’;
}

function GetObject(id){
var el = document.getElementById(id);
return(el);
}

</script>

<body onload=”RSSRequest();”>
<div id=”status” style=”display:none”></div>
<div id=”ajaxreader”></div>

</body>

</html>

Das und noch ein bisschen mehr ist dann auch schon der Sourcecode für die WMLive app. Mir hat das sehr viel geholfen um gefallen an Blackberry Widgets zu bekommen und mal schauen was man noch alles machen kann.

Posted in Blackberry | No Comments »

16th Jun 2010

Blackberry Widget – WM 2010 Live (Update)

Seit drei Tagen bin ich am schrauben und frickeln und bin immer noch nicht Fertig, aber ich will die App jetzt einfach mal veröffentlichen weil die WM auch bald vorbei ist ;) Ich habe die App zum ausprobieren von verschiedenen Notifications vom BB geschrieben und vielleicht bringt sie dem einen oder anderen etwas. Die eine oder andere WM App für den Blackberry funktionieren nicht so wirklich oder verbrauchen zu viel Akku.

Was leider noch nicht funktioniert ist den Intervall einzustellen (updated sich jetzt jede Minute) weil ich es noch nicht geschafft habe dass sich das Menü öffnet. Außerdem hätte ich gerne dass das Blackberry noch Vibriert wenn ein Tor gefallen ist (daran Arbeite ich gerade). Die App vibriert endlich wenn eine neue Benachrichtigung eintrifft.

Kommen wir mal zu dem Punkt wo ich sage was schon funktioniert ;) Die App läuft im Hintergrund und schaut jede Minute nach ob bei irgend einem Spiel ein Tor gefallen ist oder ob ein Spiel fertig ist. Wenn dies geschehen ist wird man darüber informiert. Wie immer – keep it simple und sobald es Vibriert gibt es eine neue Version ;)

OTAInstall: here

Posted in Blackberry | 5 Comments »