Forum: PC-Programmierung SmartPhoneApps => ein paar NewBe Fragen


von Chefkoch (Gast)


Lesenswert?

Hallo zusammen,

mein aktuelles Handy ist in die ewigen Jagdgründe eingegangen. So 
überlege ich, mir diesmal doch ein Smartphone zuzulegen. Jetzt währe es 
für mich auch fachlich interessant mich mit dem Thema Apps zu 
beschäftigen. Daher ein paar NewBe Fragen:


1.) Gibt es eine allgemeine Antwort darauf, wie das mit der Toolchain 
aussieht, oder wie stark hängt das vom jeweiligen Modell ab?

2.) Wie läuft das überhaupt ab? Ich kenne Software bisher (fast) nur 
sehr hardware nah => schreiben, compilen, flashen. Wie läuft das auf 
höheren Architekturen? Als ".exe" (oder sinngemäßem) crosskompilieren, 
oder als install?

3.) "Womit" werden die Apps erstellt? Zum Beispiel Qt? Würde ja Sinn 
machen, da viele Betriebsysteme Linux Derivate sind.

4.) Gibt es so etwas wie "Everybodys Darling"? In dem Sinne, gibt es ein 
Modell, wo es z.B. von der Tool Chain her besonders einfach ist, es vll. 
sogar ein SDK gibt, um an die Sensordaten zu kommen, eine breite 
Community, etc. p.p.

5.) Bei den Linux basierten Dingern, muss ich mir das vorstellen, als ob 
ich mich ganz normal in ein embedded Linuxsystem wie Pi oder BBB 
einlogge?

mfg,
der Smutje

: Verschoben durch User
von Borislav B. (boris_b)


Lesenswert?

Das sind die wesentlichen Toolchains:

 + Android: Android SDK + Android Studio
 + iOS: iOS SDK + Xcode
 + WinPhone: Windows Phone SDK + Visual Studio

Da fällt dann jeweils eine Datei raus, die du an den entsprechenden 
Store-betreiber zur Überprüfung übermittelst. Wird diese für gut 
befunden, wird sie zum Download freigegeben.

Wenn du nur für dich entwickelst, kannst du App aber auch ohne Store 
direkt auf dein gerät spielen. Das Betriebssystem kümmert sich dann um 
die Installation deines App-Pakets.

von Guest (Gast)


Lesenswert?

Was man auch noch sagen sollte:

bei iOS musst Du in Apples Developer Programm (ca 99$/Jahr). Dann kannst 
Du Deine Apps auf Deinen Endgerätren testen und bekommst das iOS SDK.
Sprache ist ObjectiveC.

bei Android kann man die Apps (*.apk) einfach auf das Gerät kopieren und 
installieren. Keine Anmeldung in irgendeinem Developer Programm nötig.
Sprache ist Java.

Wie es bei Windows Phone aussieht weiss ich nicht genau.

von Chefkoch (Gast)


Lesenswert?

Also mit Qt und C++ ist kein Blumentopf zu gewinnen?

von ♪Geist (Gast)


Lesenswert?

Chefkoch schrieb:
> Also mit Qt und C++ ist kein Blumentopf zu gewinnen?

Evtl. auf dem Ubuntu Phone, aber wer möchte den Mist haben :)

von Pandur S. (jetztnicht)


Lesenswert?

Natuerlich gibt es verschiedene Toolchains bei Android. Bin aber nicht 
auf dem Laufenden. Embarcadero hat auch was mit Pascal.

von Andy (Gast)


Lesenswert?

Interessant könnte für dich auch das entwickeln einer App in 
HTML5/CSS/Javascript sein und dann mit z.B Cordova 
(http://cordova.apache.org/) das ganze lauffähig für die jeweilige 
Plattform zu machen. Das hat den Vorteil, dass du nur einmal entwicklen 
musst, aber auf allen Plattformen 'deployen' kannst.
Wunderlist (eine ToDo App) z.B nutzt TideSDK und hat somit eine 
CodeBasis für Desktop Anwendungen geschaffen. Die Jungs von TideSDK 
werkeln momentan an TideKit. Das soll es möglich machen eine einmal 
geschriebene Anwendung sowohl auf den mobilen Plattformen, als auch auf 
dem Desktop ausführen zu können.

Ich finde den Ansatz, plattformunabhängig zu entwickeln, jedenfalls 
recht interessant.

von Fritz G. (fritzg)


Lesenswert?

Guest schrieb:
> bei iOS musst Du in Apples Developer Programm (ca 99$/Jahr). Dann kannst
> Du Deine Apps auf Deinen Endgerätren testen und bekommst das iOS SDK.
> Sprache ist ObjectiveC.

Nicht ganz.
Xcode und die SDK bekommt man auch kostenlos. Damit kann man die App 
aber nur im Simulator starten. Mit der kostenpflichtigen Mitgliedschaft 
kann man die App auf bis zu 100 Geräten installieren (für Betatests 
z.B.).

Sprachen sind Swift (sehr zu empfehlen, macht Spass) und Objective-C.

von Nil (nilsnilss)


Lesenswert?

Mit Qt lassen sich auch Android-Apps entwickeln. Aber eher mit weniger 
C++ und dafür mit mehr QtQuick.
Ist mir persönlich viel angenehmer als direkt mit dem Android-Studio.

von Chefkoch (Gast)


Lesenswert?

Tante google weiß alles
http://doc.qt.io/qt-5/android-support.html

In so fern danke für Key-Wörter zum suchen.

@Nils Friess

In wie fern mehr QtQuick als Qt? Ich hatte mal im Drüberflug gelesen, 
das Quick für portable Anwendungen gedacht ist.
Gibt es da einen tieferern Grund, oder ist es in erster Linie, dass in 
Quick die "Fancy Sachen" (wie Animationen) leichter zu machen sind?

von Chefkoch (Gast)


Lesenswert?

Noch eine Frage:

Für mich als sehr hardwarenaher Mensch noch unsicheres Terain - wenn ich 
lese, diese und jene API (z.B. Bluetooth) wird von Qt unter Android 
unterstützt - gilt das dann für ALLE Geräte die Bluetooth und Andoid 
haben? Also auch für alle Smartphones die unter Andoid laufen?

von Nil (nilsnilss)


Lesenswert?

Ja, so Dinge wie Bluetooth etc. gehen auf allen Geräten, weil Qt im 
Endeffekt auch nur das Android SDK (oder NDK, ich komm da immer 
durcheinander mit den Abkürzungen) benutzt.

von Jay (Gast)


Lesenswert?

Du kannst dir natürlich mit Qt oder ein paar anderen Libraries und Tools 
eine exotische Variante zum Programmieren von Apps aussuchen. Oder du 
kannst einfach die millionenfach verwendeten Toolchains und Sprachen 
nehmen.

Also, was willst du? Exotisch fummeln, weil es so toll ist so wahnsinnig 
individuell und speziell zu sein, oder einfach deine App bauen?

Bei den Linux-basierten Android siehst du eigentlich nichts vom Linux, 
also vergiss das mal. Es sei denn, du willst unbedingt mit Linux 
fummeln. Dann würde ich allerdings eine Totgeburt wie Sailfish, Ubuntu 
Touch, Firefox oder Tizen statt Android nehmen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.