[gelöst] Erste Android-App funktioniert nicht

DonAlfredo
Beiträge: 74
Registriert: Do 28. Sep 2017, 10:26

Re: Erste Android-App funktioniert nicht

Beitrag von DonAlfredo »

As a sidenote.
Its also possible to make a (more or less) bare-metal Android app. The links below will guide you to an example.
As Android has no command line, I have used OpenGL and a redirect of writeln to get some output on an OpenGL window.
Not a single line of java needed. No extra installs needed.
The binaries run the TestSQL3 suite of the mORMot.
The frameworks used: PXL and mORMot.
Binaries are not perfect, but allow you to experience the basic idea.
Repo:
https://github.com/LongDirtyAnimAlf/AsphyrePXL
Binaries:
https://github.com/LongDirtyAnimAlf/Asp ... /tag/1.0.0

Timm Thaler
Beiträge: 1224
Registriert: So 20. Mär 2016, 22:14
OS, Lazarus, FPC: Win7-64bit Laz1.9.0 FPC3.1.1 für Win, RPi, AVR embedded
CPU-Target: Raspberry Pi 3

Re: Erste Android-App funktioniert nicht

Beitrag von Timm Thaler »

Hab das jetzt mal anhand der Anleitung aus der Linux-Welt versucht und hänge beim Erstellen der App (Build APK and Run):

Code: Alles auswählen

Could not initialize class org.codehaus.groovy.runtime.InvokerHelper
Dem Internet nach liegt das an der gradle-6.2 Version, ein Update auf 6.3 würde das Problem beheben. Stimmt das und bekommt ich das Update irgendwie rein oder muss ich warten bis LAMW das aktualisiert?

Mathias
Beiträge: 6165
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Erste Android-App funktioniert nicht

Beitrag von Mathias »

und bekommt ich das Update irgendwie rein
Hier die gewünschte Version runterladen: https://gradle.org/releases/

Dann unter "Werkzeuge --> [LAMW] Android Module Wizard --> Path Settings [xxx] --> Path to Gradle" den Pfad zur gewünschten Gradle anpassen.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Timm Thaler
Beiträge: 1224
Registriert: So 20. Mär 2016, 22:14
OS, Lazarus, FPC: Win7-64bit Laz1.9.0 FPC3.1.1 für Win, RPi, AVR embedded
CPU-Target: Raspberry Pi 3

Re: Erste Android-App funktioniert nicht

Beitrag von Timm Thaler »

Das geht? Ich dachte LAMW kann nur mit der selbst gelieferten Version arbeiten.

Probier ich aus.

Mathias
Beiträge: 6165
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Erste Android-App funktioniert nicht

Beitrag von Mathias »

LAMW ist (nur) eine Erweiterung für Lazarus, welche die passenden Tools aufruft, welche für Android gebraucht werden. So ähnlich wie meine "Embeded GUI" für AVR und ARM.
Ich dachte LAMW kann nur mit der selbst gelieferten Version arbeiten.
Das schon ein Gradle vorinstalliert ist, dies kann man Don Alfredo verdanken.

Was sehr schade ist, anstelle von Gradle gab es noch Ant. Das ist um ein vielfaches schneller als Gadle, wird aber angeblich nicht mehr unterstützt. :cry:

Noch etwas anderes, wen ich Windows User wäre, würde ich mir den Umweg über die V-Box sparen. Die ganzen Android-Tools gibt es auch für Windows. So nebenbei gibt es dort Bluestack, in dem man sehr gut die Apps testen kann.
Eine V-Box bremst das Entwickeln sehr stark ab.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 990
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

Re: Erste Android-App funktioniert nicht

Beitrag von kralle »

So, da bin ich wieder.

Bei mir hat es jetzt auch funktioniert.
Der Fehler saß Armeslänge vor dem Bildschirm.

Da das Zielgerät Android 6.0.1 hat, habe ich das schon immer gleich eingestellt, was dann zu Fehlern führte.
Die Einstellungen aus der Anleitung übernehmen und es funktioniert.

Was etwas nervig ist:

Das Default-Fenster des Formdesigners ist senkrecht, das Ziel-Tablet steht waagerecht.
Beim ersten Durchlauf, war der EditText nicht zu sehen.
Da muss man beim Design echt aufpassen.

Als nächstes werde ich mal die Fritzbox-App starten, mal sehen ob die läuft.

Gruß Heiko
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.2.2 , Lazarus 3.0
+ Delphi XE7SP1

Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 990
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

Re: Erste Android-App funktioniert nicht

Beitrag von kralle »

So, die "SmartFritz"-App läuft auch auf dem Tablet. Habe nur keine Smart-Geräte im Einsatz.

Frage:" Für Android brauche ich ja eine andere Oberfläche. als für Linux/Windows. Beides mal soll aber der Programmcode auf die gleichen Objekte reagieren z.B. einen Button.
Wie entwickelt man ein Programm, das je nach OS verschiedene Oberflächen nutzt?"

Gruß HEiko
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.2.2 , Lazarus 3.0
+ Delphi XE7SP1

Socke
Lazarusforum e. V.
Beiträge: 3158
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: Erste Android-App funktioniert nicht

Beitrag von Socke »

kralle hat geschrieben:
So 23. Aug 2020, 19:39
Wie entwickelt man ein Programm, das je nach OS verschiedene Oberflächen nutzt?"
Entkopple deine Oberflächen soweit möglich von der Programmlogik. Die Programmlogik und Datenklassen ziehst du in ein generisches Package um. In den Projekten für die jeweilige Plattform stöpselst du dann Oberfläche und Logik nur noch zusammen.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 990
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

Re: Erste Android-App funktioniert nicht

Beitrag von kralle »

Aber, alles in einem Projekt verwalten und über Direktiven und Build-Mode jeweils aktivieren klappt nicht?

Gruß HEiko
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.2.2 , Lazarus 3.0
+ Delphi XE7SP1

Mathias
Beiträge: 6165
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Erste Android-App funktioniert nicht

Beitrag von Mathias »

kralle hat geschrieben:
Mo 17. Aug 2020, 10:34
Ich habe von "Linux Welt " die Erlaubnis bekommen den Artikel hier zu veröffentlichen.
Sie haben mir den sogar schön in eine PDF verpackt.

Gruß Heiko

LinuxWelt-05-2020-Seite64ff.pdf
In der Zeile "Starten Sie „~/android-studio/studio.sh“. " hat sich ein kleiner Fehler eingeschlichen, müsste „~/android-studio/bin/studio.sh“ heissen.
Oder habe ihr unterhalb von "bin" schon ein studio.sh ?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Timm Thaler
Beiträge: 1224
Registriert: So 20. Mär 2016, 22:14
OS, Lazarus, FPC: Win7-64bit Laz1.9.0 FPC3.1.1 für Win, RPi, AVR embedded
CPU-Target: Raspberry Pi 3

Re: Erste Android-App funktioniert nicht

Beitrag von Timm Thaler »

Mathias hat geschrieben:
So 23. Aug 2020, 15:52
Noch etwas anderes, wen ich Windows User wäre, würde ich mir den Umweg über die V-Box sparen. Die ganzen Android-Tools gibt es auch für Windows. So nebenbei gibt es dort Bluestack, in dem man sehr gut die Apps testen kann.
Eine V-Box bremst das Entwickeln sehr stark ab.
Ich mach das direkt im Windows, soviel Transferleistung bekomme ich hin. Läuft jetzt mit gradle6.6.

Nur das automatische Kopieren in Bluestack klappt nicht gleich, aber man kann das APK einfach rüberziehen und dann wird es installiert. Wie geil ist das denn!

Und bei jedem neu Kompilieren wird die App in Bluestack automatisch aktualisiert. Wie geil ist das denn!

Ich weiß zwar nicht, was da alles im Hintergrund passiert - aber es funktioniert.

Antworten