Keine Zeit, diese Sache mit der Zeit

Soviel möchte ich machen, soviel erreichen und alles am besten sofort.
Aktuell arbeite ich an meinem Content Management System, an der MockBot App, an der Meettube App, einem CRS, dem Minecraft-Social Plugin, einem Redaktionssystem für YouTube Trends und sicher noch ein paar anderen Dingen. Vieles liegt angefangen auf Eis und vieles Spuckt noch in meinem Kopf herum.
Natürlich alles in meiner Freizeit, den fürs Geld verdienen muss ich immer noch aus dem Haus. Wie viel würde ich wohl schaffen wenn ich diese Zeit auch noch hätte und endlich nach und nach die Projekte fertig werden würden.

Wenn… So bleibt die Masse, ein Haufen angefangener Projekte welche niemals fertig werden.

Gesamt Wert des Codes an Stunden berechnet, mehrere hundert tausend Euro. Tatsächlich aber aktuell genau 0 Euro wert.

Es bleibt nur eins , Disziplin und durchhalten. Nach und nach, Stück für Stück Projekte fertig stellen und nur nicht die Übersicht verlieren.                                                                                     
In meinem virtuellen Freizeit Büro gibt’s immer was zu tun. Selbst wenn ich nicht programmiere. Managen, Planen, Konzeption, Architektur und Prioritäten setzten. Sich selbst Abgabe Termine setzten und … als würde ich mir von so einem in meiner Freizeit was sagen lassen.. 

Erinnert mich ganz schön an meine Selbstständigkeit, nur ohne das Risiko und den Druck Geld verdienen zu müssen.

Nächste mal, Burnout durch Freizeitgestaltung?

MeetTube Android App Entwicklung auf @livecodingtv

Mal ein paar Worte zur aktuellen Entwicklung von MeetTube. Diese App hatte ich eigentlich für frühstens Ende des Jahres geplant, konnte sie aber aus verschiedenen Gründen jetzt vorziehen.

Die ganze App wird im Live Stream programmiert und das exclusiv auf Livecoding.tv, sicher nicht immer spannend aber man bekommt sehr gute Einblicke und weiß am Ende auch das sie nichts böses enthält 😉 Alle zuschau sind auch herzlich eingeladen an der Gestaltung der App teilzunehmen und Wünsche zu äußern.

Die komplette PlayListe ist hier zu finden.

HTTP Request, Response Androide App, REST JSON API

Gerade im Bereich der App Entwicklung möchte man Inhalte über das Web abrufen und in der Applikation weiterverarbeiten.
Oft ist es aber auch notwendig Daten zum Server zu schicken und diese dort zu speichern.

Daher habe ich mir meine JSONServer.class auseinander gepflügt um hier die einzelnen Punkte nieder zu schreiben.

Für meine Zwecke habe ich folgende Bibliotheken in meine JSONServer.class importiert:

  • import org.apache.http.NameValuePair;
  • import org.apache.http.client.ClientProtocolException;
  • import org.apache.http.client.HttpClient;
  • import org.apache.http.client.ResponseHandler;
  • import org.apache.http.client.entity.UrlEncodedFormEntity;
  • import org.apache.http.client.methods.HttpPost;
  • import org.apache.http.impl.client.BasicResponseHandler;
  • import org.apache.http.impl.client.DefaultHttpClient;
  • import org.apache.http.message.BasicNameValuePair;
  • import org.apache.http.params.BasicHttpParams;
  • import org.apache.http.params.HttpConnectionParams;
  • import org.apache.http.params.HttpParams;
  • import org.json.JSONObject;

Um mit dem Ergebnis des Servers weiter zu arbeiten nutze ich das  JSONObject in der Applikation.

Um ein neues JSONObject  zu erstellen benötigt man nicht viel Code:

JSONObject json = new JSONObject(„{name:“JSON STRING“});

Nun steht ein aus dem JSONSTring abgeleitetes Objekt zur Verfügung. Möchte ich nun den wert von „name“ auslesen

Aufbau  der httpParameter:

HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams,
TIMEOUT_MILLISEC);
HttpConnectionParams.setSoTimeout(httpParams, TIMEOUT_MILLISEC);

und des HttpClient sowie HttpPost:

HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(ServerUrl);

Erstellen eines NameValuePairs für die Post Daten:

List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair(„user“, „wert“));
nameValuePairs.add(new BasicNameValuePair(„lat“, „Wert“)));
nameValuePairs.add(new BasicNameValuePair(„lng“, „Wert“)));

Und absenden :

httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
ResponseHandler<String> responseHandler = new BasicResponseHandler();
String responseBody = httpclient.execute(httppost, responseHandler);

Anschließend den Response zum JsonObject übergeben:

JSONObject json = new JSONObject(responseBody);

Ingress Bot zum farmen und mehr als App

In allen großen Spielen gibt es Cheater, Cheats, Modifikationen und mehr.

So natürlich auch bei Ingress.
Wer über root auf seinem Gerät verfügt kann mit verschiedenen Apps seine Koordinaten fälschen und so hacken, linken, zerstören und deployen. Einige dieser Apps bringen im Spiel Störungen die dieses schummeln sehr beeinträchtigen.

Hier habe ich mit einem Kollegen eine App entwickelt der sowohl das GPS Signal, wie auch die Netzwerk Location fälscht. Diese wir Ende der Woche auf dem play Store zu finden sein. Da ich diesen testen möchte.

Nach dem wir dies ermöglicht haben entwickelte ich eine App die einem das klicken im Spiel abgenommen hat.

Auch hier wird Ende der Woche eine App erscheinen um touch Makros zu erstellen.

Kombiniert erhält man einen Farmbot für Ingress. Welcher zu den verschiedenen Portalen geht diese mehrmals hackt und dann weitet zieht.

Weiter habe ich durch den Bot fehlende Funktionen wie Massen drop, Massen Recycling nachgerüstet.
Damit ist es möglich von einem ausgewähltes item eine definierte Menge zu droppen oder zu feuern.

Die Funktionen werden jedoch nicht in Kombination mit den gefälschten Positionen genutzt,  sie bieten nur entsprechende Erleichterung vor Ort.

Die beiden genannten Apps werde ich dann noch bebildert mit der veröffentlichung vorstellen.

image

Hier ein Bild der ersten Beta. Die erweiterten Funktionen sind hier noch nicht zu sehen. Die Auswahl der Portale erlaubt das geziehlte farmen. Die Portal Informationen werden vom Webserver regelmässig aktualliesiert und der App via API zur Verfügung gestellt.

Der Bot ist nicht erhältlich. Und dieser Artikel soll nur aufzeigen welche Möglichkeiten die App Entwicklung bietet. Getestet wurde der Bot mit einem separaten Account und ausschließlich für die Testphase genutzt.

Android Apps

Nun habe ich mich mal mit Android Apps beschäftigt und natürlich die erste Anwendung erstellt.

Nach dem Setup des Android SDK hat man alles auf dem Rechner um eine App zu erstellen inklusive eines Emulators für Smartphone.

Die Gestalltung der Anwendung ist in dem mitgelieferten eclipse so einfach wie im Visual Studio von Microsoft. Einmal auf Start gedrückt und schon startet die App im Emulator oder auf dem eigenen Endgerät.

Im verzeichniss value liegen XML datein um zum Beispiel Strings zu speichern. Im Ordner src können die eigenen Klassen abgelegt werden. Hier liegt auch die Hauptklasse der Applikation. Was in c# forms sind gibt es hier als activiy. Diese kann man jederzeit wechseln. Für das klicken auf Buttons wird leider ni ht automatisch die listener und callbacks gesetzt so das hier pro Button 3 Zeilen Code gehackt werden müssen. Ich hoffe das wird noch optimiert.

Insgesamt errinnet das definieren der ganzen Listener stark an JavaScript was aber nicht wundert da wir und hier ja in Java Bereich befinden.

Ein Shake Listener war relative schnell und leicht implementiert. Wird nun das Smartphone geschüttelt beendet sich meine Applikation. Sinn sei mal dahin gestellt.

Einfaches Location Mock war auch kein Problem. Jedoch ist das Ergebniss hier bis lang unbefriedigent da die Genauigkeit etwas stark schwanckt. Aber die Optimierung hierfür kommt noch.

Die nächsten Tage werde ich noch einen Twitter Reader in die App implementieren um die Zusammenarbeit mit Webservern zu testen. Code gibt es sich in den nächsten Beitragen zu sehen.