Einfachster Weg eine Android-App zu produzieren.

  • Hallo!


    Mir ist das alles zu kompliziert. Ich möchte folgendes:


    Zitat

    I'm thinking of a one-click web service that directly outputs an .apk file. Input:


    A Java snippet (just a piece of Java code)
    An application name
    An optional icon


    (Siehe http://tinybrain.blog.de/2015/…ramming-simpler-20207473/)


    Wie geht das??? :-)) Ich möchte es auf Linux tun. Einfach mit 'ant'? Aber wie sieht das build.xml aus?


    Brauche Hilfe!!


    Stefan

  • Gar nicht.
    Das ist nicht der Weg, wie es funktioniert.


    Das ist, mit Verlaub, sogar totaler Blödsinn.


    Und zwar aus mehreren Gründen:

    • 'a snippet' ist nicht einmal ansatzweise so etwas Ähnliches wie eine App.
    • Ohne zusätzliche Inhalte wie Grafiken ist das Ganze mindestens fad, sicherlich aber komplett ohne Mehrwert
    • Willst Du erst mal spontan alle Berechtigungen und Zugriffe erlauben? Oder gar keine? Wie soll die App dann laufen?


    Ja, es mag kompliziert sein.
    Zumindest bis man es verstanden hat.
    Wenn man es nicht verstehen will, dann sollte man sich seine App lieber programmieren lassen.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Wie blöd wär die Programmierung denn wenn es gleich jeder kann?
    Wenn du ein Haus bauen möchtest, schnippst du doch auch nicht einfach mit den Fingern und dein Haus steht.
    Wenn du es selber bauen willst, musst du lange Erfahrungen sammeln und Lernen. Wenn du es bauen lassen willst, musst du viel Geld in die Hand nehmen. Bei Software kann man dies 1 zu 1 übernehmen.

  • Hey Jungs!


    Eure Programierwelt ist nicht nur zu kompliziert - ihr verteidigt sogar, DASS es zu kompliziert ist.


    Und es ist wirklich zu kompliziert. Was nichts Gutes ist.


    Denkt mal einfacher.


    Cheers.


    Still looking for a simple way. Gegen das Android SDK ist ja sogar Java total einfach (javac + java, fertig).

  • Und wieso soll eine App, die vielleicht nur einen Button zeigt, keinen "Mehrwert" haben? Das ist doch alles suuuper unlogisch, was ihr schreibt...


    Ich will einen Button, der was tut. Fertig. Mehr kann man immer noch bauen.


    Aber man kann doch nicht verteidigen, dass das Android SDK sogar für einfache Sachen total kompliziert ist. Wie wär's mal damit, dass du KRITISIEREN?

  • Na, da nimmst Du Dir aber viel heraus.
    Wenn die folgenden Zeilen bei Dir das Gefühl auslösen, ich würde zu einem pubertierenden 14jährigen schreiben: Das liegt daran, dass Du Dich wie ein pubertierender 14jähriger aufführst.


    Ich verteidige keinesfalls, dass die Programmierung so kompliziert ist. Es wäre unglaublich genial, wenn man sich hinsetzen könnte, eine Zeichnung des User Interface erstellen würde, in ein paar einfachen Sätzen genau beschreiben würde, was die App wann macht und nach Drücken auf einen Knopf wird daraus dann die gewünschte App erstellt.
    DAS wäre großartig. Jeder könnte das Programm für das Gerät haben, das er braucht.
    Die Automatisierung würde vorangetrieben, das digitale Bewusstsein der Menschen würde sich erweitern und niemand wäre mehr auf Softwarehersteller angewiesen.
    (Bitte erst erfinden, wenn es das bedingungslose Grundgehalt gibt – dann bin ich nämlich zunächst einmal arbeitslos.)


    Es gibt bereits diverse Ansätze, mit denen sich durch das Geschiebe grafischer Elemente logische Zusammenhänge darstellen und kleine Programme 'zeichnen' lassen.
    Lego Mindstorms™ fällt mir da spontan als bekannteste Variante ein.


    Im Übrigen ist javac+java auch nur so lange einfach, solange Du da keine Abhängigkeiten hast. Sobald Du mehr als eine .java Datei einbindest (und man kann HalloWelt prima auf zwei Dateien auslagern), benötigst Du eine Manifest Datei, die definiert, welche der generierten Klassen jetzt Dein Einstiegspunkt ist.
    Und schon klappt das mit nur einem Codesnippet hinten und vorne nicht mehr.
    Das liegt nicht an uns und nicht an der Programmierung, das liegt an der Funktionsweise von Java.
    Unter C/C++ hast Du das Problem eher nicht, allerdings darfst Du da noch mit einem Linker herumhanitieren, wenn Du zusätzliche Komponenten nimmst.


    Nun zu Deinem Problem:
    Du fragst uns ob das einfacher geht, wir sagen 'Nö. Ist so gestrickt, geht nicht einfacher.'
    Dann meckerst Du rum, wir würden den alten festgefahrenen Scheiß verteidigen. Das ist Blödsinn. Wir teilen Dir lediglich mit, dass Dein Vorhaben nicht umzusetzen ist, weil Java komplett anders funktioniert.
    Wenn Du gefragt hättest, was wir davon halten würden, wenn es eine Möglichkeit gäbe ganz einfach ein Programm zu erstellen – einfach ein paar Zeilen Code tippen und fertig – dann wäre ich total auf Deiner Seite gewesen.
    Gut, ich hatte nicht viel Compilerbau und muss sagen, so ganz trivial wird das sicherlich nicht sein. Aber egal.
    Es geht hier aber nicht um eine esoterische zukünftige Welt, sondern um die aktuell reale Umgebung. Und da hast Du einfach zu viele Einstellungsmöglichkeiten und –pflichten, als dass Du auf Knopfdruck aus einem Codeschnippsel eine App produzieren könntest*


    Aktuell wird Softwareentwicklung noch als Handwerk bezeichnet, weil es so kompliziert ist. Und das meint nicht nur die Programmierung an sich sondern vor allem die Softwarearchitektur.
    Den Kram zu vereinfachen würde ein ähnliches Ergebnis haben wie alles in der IT: Es wird für alle einfacher zu benutzen, aber immer schwerer zu verstehen. Und schlussendlich ist man doch wieder auf Andere angewiesen.
    (Wann hast Du das letzte Mal bei Deinem Laptop die BIOS Batterie rausgenommen, weil Dein SmartCard Reader defekt war und Du die Sicherheitseinstellungen des Gerätes zurücksetzen musstest? Ist bei mir ungefähr 10 Jahre her. Hat mich damals 120€ gespart. Heute komme ich nicht umhin mit den Dingern zum Fachmann zu gehen…)


    *) Es wäre natürlich theoretisch denkbar und möglich, dass man aus einem Snippet eine Standard-Main-Activity generiert die sich dann idealerweise auch noch um die Imports kümmert und auch noch die notwendigen Berechtigungen in die Manifest einträgt. Da kannste dann Deine gefundenen Snippets zügig testen. Also, relativ zügig. Das ganze Zusammengeschustere wird länger dauern als ein Projekt anlegen und es da hineinzukopieren.
    Hinzu kommt, dass diese automatisierten Verfahren im Allgemeinen nicht allzu viel taugen. Es gibt etliche Ansätze, die das Lernen neuer Programmiersprachen erleichtern wollen, in dem sie die Möglichkeit bieten, Code in der gewohnten Programmiersprache zu übersetzen. Das klappt aber nur bei Standardfällen, und auch da nur zu ca. 80%.
    Programmieren hat aber nichts mit Standardfällen zu tun. Wir lösen jeden Tag Probleme, die wir vorher noch nie hatten (und sollen im Vorfeld auch noch wissen wie lange wir dafür brauchen.)
    Dabei hilft es, sich mit unbekannten Problemen auseinanderzusetzen statt auf eine simple Lösung zu warten. Also fang am Besten gleich mal damit an.
    Beispielsweise, indem Du Dir Deinen gewünschten vereinfachenden Service selbst baust.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Warum soll ich die Komplexität nicht verteidigen? Das sichert mir meinen Job und mein Gehalt.
    Und es lässt sich nunmal nix daran ändern das wenn du ein Haus bauen willst du erst Erfahrung und Fertigkeiten erlangen musst, sonst fällt dir das Haus nämlich einfach zusammen. Irgendwer muss ja sicherstellen das es Korrekt entworfen und gebaut wurde. Wenn du das nicht machen willst brauchst du eben jemand anderen, aber der brauch dafür knowhow.


    Ich geh noch einen Schritt weiter als Marco und würde behaupten in keiner Programmiersprache kannst du einfach ein beliebiges Programm zusammenklicken. ABER: Ich habe meine Bachelorthesis über Codegenerierung von mobilen Anwendungen geschrieben. Dabei ging es darum mittels Diagrammen (Klassendiagramm, Use-Case, etc.) gleichzeitig für Android und iOS Applikationen zu generieren. Theoretisch gehen dabei die einfachsten Anwendungen schon (es gibt einige Generatoren die auch schon komplexe Apps generieren können), jedoch kann eben die grafische Oberfläche und auch beliebige komplexere OS spezifische Gebilde nicht so einfach generiert werden. Das ist ein hoch komplexes Thema und da wären wir wieder bei dem Punkt, du baust dein Haus nicht selber sondern bezahlst jemand dafür, das er sein KnowHow einsetzt, mit dein Haus korrekt entworfen und gebaut wird.

  • Ahhh Script-Kiddies ?( da denkt er weil er fehlerfrei seine Playstation bedienen kann, hat er Ahnung vom programmieren...tz tz tz


    Man muss sich ja nur mal überlegen wie lange es gedauert hat bis viele geniale Köpfe auch nur einen Ansatz einer Programmiersprache erfunden und entwickelt haben. Solche Sprachen wachsen und formen sich mit den Jahren und ganz ehrlich, ich dachte auch das ich Java beherrsche, als ich meinen Techniker in dem Fach mit ner 1,0 abgeschlossen habe.
    Aber da kam ein ganz schöner Sprung mit dem Einstieg in die Berufswelt, die Logik für vollautomatisierte Maschinensteuerungen zu entwickeln.


    Wenn dir der Ansatz einer Programmiersprache zu komplex ist, kannst du ja auch gerne versuchen im Binärcode mit deinen Geräten zu kommunizieren :P

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!