Realisierbarkeit für Androideinsteiger

S

speerwerfer

Erfahrenes Mitglied
19
Hallo,

Ich würde von den Experten gerne wissen wie realistisch es für mich als Android Greenhorn ist die folgende App Idee umzusetzen.

Ich bin Softwareentwickler. Erfahrungen mit Java habe ich nur sehr rudimentär. Bisher bin ich mit C++ unterwegs gewesen. Android hat mich immer schon interessiert, nun habe ich ein konkretes Projekt.

Zur Idee. Auf einem Raspberry werden an den IO Ports Sensoren abgefragt und Relais geschaltet. Das ganze wird dort mit Python gemacht.
Ich möchte nun eine App schreiben, die per Push Nachricht Infos von diesem Raspberry empfängt und ggfl. akustisch einen Alarm auslöst. Das ganze soll im lokalen Netz als auch über das Internet funktionieren.
In einem zweiten Schritt möchte ich dann auch Ausgänge des Raspberry schalten können.

Es geht mir aber erstmal um die Funktion und nicht um Look & Feel.

Ist so was als Projekt realisierbar? Natürlich nicht als auf einmal. Eins nach dem anderen. Also als erstes mal eine Kommunikation der Sensorwerte an das android Gerät ...

Martin
 
Im Grunde kann ich dir empfehlen Eclipse mal zu installieren und dich damit vertraut zu machen. Eclipse ist eine weit verbreitete Development Umgebung für Android. Wenn du durch die Bedienung durch steigst, sollte das Projekt realisierbar sein.
Bei Notwendigkeit haben wir hier im Board aber auch einige Dev´s die kleine Leitfäden geschrieben haben um den Einstieg in´s Android Development zu erklären.
 
Eclipse sollte kein Problem sein. Das kenne ich. Hab ja schon mal in einem Java Projekt ausgeholfen. Waren aber nur sehr einfache Aufgaben.
 
Hallo Speerwerfer,

für einen Softwareentwickler, der auch über den Tellerrand schauen kann, ist Android keine Rocketsience.

Es gibt sogar Frameworks, wo du C# benutzen kannst, und dadurch gute Apps programmieren könntest.
Ich empfehle dir aber für dein Vorhaben Java zu programmieren.

Der Unterschied zwischen Desktopapplikationen und mobilen Programmen besteht in den weniger zur Verfügung stehenden Ressourcen und dadurch auch im Lebenszyklus einer App/Activity.

Android Developers ist ein guter Einstieg mit schnellen "Hello World"-Ergebnissen.

Bei deinem konkreten Projekt hast du ein paar Anforderungen gestellt.
Push wird bei Android normalerweise über GCM (Google Cloud Messaging) gemacht.
Ich habe auch schon einen Raspberry über Android ferngesteuert. Dort habe ich einfach über das HTTP-Protokoll mit einem Nodejs-Server auf dem Raspberry kommuniziert.
Um es über das Internet zu verbinden, würde aber etwas Routerkonfiguration benötigt werden.

Ich wünsche dir auf jedenfall viel Spaß und Erfolg.
 
Zu den Frameworks: Ich habe im Job mit den QT Bibliotheken gearbeitet. Seit einiger Zeit kann man auch damit Android Programme entwickeln. Vorteil: ich kenne die Bibliotheken und ein Port auf iOs wäre einfacher.

Aber ich erd wohl trotzdem mal mit Java anfangen.

Martin
 
Java lohnt sich immer. Die Java-Programme sind kleiner und schneller als die QT - Portierungen. ;) Bei iOS macht es schon mehr sind, wie sich das mit Swift ändert weiß noch keiner.
 
Hallo Speerwerfer,

ich habe Java statt eines C#/Qt Frameworks empfohlen, weil die Libraries welche für deine Anforderungen bei Android benötigt werden, Google von Haus aus mitgibt.
Ich weiß auch nicht genau, wie gut die Anbindung des GCM und des HTTP-Clients in einem C#/Qt Framework sind.
Hättest du die Anforderung gehabt ein Spiel zu programmieren, würde ich zu anderen Frameworks raten.
 
QT für Android ist nicht so schlecht, es funktioniert. Nur wie gesagt, durch das Framework ist alles größer und langsamer. C++ ist nicht unbedingt die erste Wahl für Android, da das System für Java optimiert wurde. (C# macht kein Sinn, dafür sind Java und C# zu ähnlich).

Aber ich bin der Meinung, dass eine neue Sprache einen immer wieder gut tut. Man lernt bestimmt etwas dazu.
 
speerwerfer schrieb:
Zur Idee. Auf einem Raspberry werden an den IO Ports Sensoren abgefragt und Relais geschaltet. Das ganze wird dort mit Python gemacht.
Ich möchte nun eine App schreiben, die per Push Nachricht Infos von diesem Raspberry empfängt und ggfl. akustisch einen Alarm auslöst. Das ganze soll im lokalen Netz als auch über das Internet funktionieren.
In einem zweiten Schritt möchte ich dann auch Ausgänge des Raspberry schalten können.

Martin

Hallo,
ich steuere mit meiner App einen Arduino (bzw, empfange auch Daten, die der Arduino aus einem Sensor herausliest).
Insgesamt sollten sich die Anforderungen von deinem Vorhaben mit meinem Projekt wohl weitestgehend decken.
Abweichungen: Den Arduino habe ich mit C programmiert und gesendet wird über Bluetooth. Insgesamt sind die Abweichungen somit wohl als eher gering bewerten.

Auch mein Tipp lautet:
Die ersten Tutorials auf der Google Doku durchlesen (vielleicht auch selbst nachbauen). Wenn du das Gefühl hast, dass du dich in der Doku zurecht findest und die Basics verstanden hast, kannst du dich auch schon an die Arbeit machen. Generell ist die Doku in vielerlei Hinsicht sehr hilfreich und an vielen Stellen vollkommen ausreichend um "zum Ziel zu kommen".

Ergänzend:
Ich bin ebenfalls von C/C++ auf Java bzw. Android gekommen, die Unterschiede in den beiden Sprachen halten sich in Grenzen.
Um es kurz zu machen: Vermutlich ist die Systematik hinter Android für Neulinge wohl der größere Brainfuck als die Sprache Java an sich (wahrscheinlich mit ein Grund warum hier die Android Doku so oft zitiert, bzw verlinkt wird).

Beste Grüße und viel Erfolg
 
Ich hab gestern Abend mal das Android Studio heruntergeladen. Spricht irgendwas gegen die IDE anstelle von Eclipse?
 
speerwerfer schrieb:
Ich möchte nun eine App schreiben, die per Push Nachricht Infos von diesem Raspberry empfängt und ggfl. akustisch einen Alarm auslöst.

Wenn das alles ist dann kannst du die App auch nahezu ohne Android Kenntnisse umsetzen indem du Google Cloud Messaging verwendest. Das ist ein Dienst an den du POST-Requests sendest und dieser dann Push Notifications an deine App. Hier findest du den Code für eine fertige App an welche Push Notifications via Google Cloud Messaging gesendet werden können. Alles was du noch machen musst ist dort den Code einzubauen um den gewünschten Alarm auszulösen und vom Raspberry POST-Requests an GCM absenden.

Ich hab gestern Abend mal das Android Studio heruntergeladen. Spricht irgendwas gegen die IDE anstelle von Eclipse?
Android Studio wird Eclipse in Zukunft ersetzen wenn es nach dem Willen von Google geht, ist aber noch Beta. Selbst habe ich es zwar noch nicht ausführlich getestet, aber ich weiß, dass viele Entwickler Android Studio schon seit längerem produktiv einsetzen. Ich würde also sagen es spricht nichts dagegen.
 

Ähnliche Themen

netfreak
  • netfreak
Antworten
10
Aufrufe
463
netfreak
netfreak
5
Antworten
0
Aufrufe
1.152
586920
5
Y
Antworten
4
Aufrufe
1.227
swa00
swa00
Zurück
Oben Unten