![]() |
Grundsätzliche Fragen zu Android App's Entwicklung (XE5)
Hallo,
Mein Versuche bisher (am Ende des Threads) : ![]() Habe nun ein passendes pysikalisches Device mit aktivem USB Debugging am PC angeschlossen, und dieses in XE5 als Zielplattform definiert. Und siehe da, die Testapp funktioniert. Ist es ist nun möglich die App einfach auf ein anderes Gerät zu kopieren, oder müsste ich das "andere" Gerät wiederum an den PC hängen damit XE dieses Gerät sieht. Werden da irgendwelche Lizenzen im Hintergrund ausgetauscht ? Was ich auch nicht verstehe, meine Zielhardware ist ein HTC Desire S mit Android Version 2.3.5, für diese ältere Version habe ich im SDK Manager nichts installiert. Nur für 4.0.3 Api15 und 4.2.2 Api17 und trotzdem ist die erzeugte App auf einer Version 2.3.5 lauffähig. warum ?? |
AW: Grundsätzliche Fragen zu Android App's Entwicklung (XE5)
Das Paket ist auf allen Smartphones lauffähig, das die Mindestvoraussetzungen erfüllt. Wäre sonst ja auch blöd für den Vertrieb. ;-)
Und du kannst auch einfach das Smartphone umstecken. Es funktioniert auch, wenn beide dran hängen zwischen beiden zu wechseln. |
AW: Grundsätzliche Fragen zu Android App's Entwicklung (XE5)
Zitat:
Ein paar Möglichkeiten der Installation sind:
Zitat:
Interessant zu wissen wäre, ob Delphi Anwendungen unterstützt, die dynamisch je nach vorhandenem API Level zwischen verschiedenen Implementierungsunits umschalten kann. Also für ältere Android Versionen eine eigene Implementierung bereitstellt, und bei höheren Versionen die im Gerät vorhandene nutzt. Sollte eigentlich gehen ... |
AW: Grundsätzliche Fragen zu Android App's Entwicklung (XE5)
Ok - Danke für die Infos.
Nun kann es losgehen :) Es sind auch etliche Kompos dabei um auf die Android Hardware zuzugreifen. Was ich vermisse, ist der AlarmManager. Diese Class gibt es in Java, ist die in XE5 vergessen worden ? |
AW: Grundsätzliche Fragen zu Android App's Entwicklung (XE5)
Keine Ahnung wer den Job gemacht hat, aber ein Lob sollte man schon aussprechen :)
Die Klasse gibt es unter Androidapi.JNI.App. Christian |
AW: Grundsätzliche Fragen zu Android App's Entwicklung (XE5)
@CHackbart: Danke dir für den Tip, aber ich fürchte ich brauche noch etwas Unterstützung.
Es fängt schon beim Erzeugen der Instanz an :oops:
Delphi-Quellcode:
Der Pointer sollte wohl auf die receive Procedure zeigen.
alarm:TJAlarmManager;
... alarm:=TJAlarmManager.create(o:alarmmanger,p:pointer) Ich finde nichts darüber,und aus der Wrapper Unit werde ich nicht wirklich schlau. Traurig ich weiß :oops: Ich fürchte ich habe mich für meine erste App eine etwas zu große Aufgabe gestellt. Es sollte eine Weckerapp werden, die nach speziellen Bedürfnissen angepasst ist. Zur Zeit ist das nur ein Kalender der die Arbeitstage markiert. |
AW: Grundsätzliche Fragen zu Android App's Entwicklung (XE5)
OK - mache meinen Thread fast schon OT, weil dies nicht mehr ein Grundsätzliche Frage ist.
Da mich das Thema aber gewaltig ins Grübeln gebracht hat habe ich die Frage auch hier reingestellt. ![]() Da auch dort bisher keine adäquate Antwort kam, ist das wohl auch nicht so einfach zu beantworten. :shock: Ich habe mich derweil etwas damit befasst wie das in Java abläuft. ![]() Es braucht auf jedenfall eine receiver Class, die auch in der Delphi Wrapper Unit gekapselt ist. Was auch für mich logisch wirkt. |
AW: Grundsätzliche Fragen zu Android App's Entwicklung (XE5)
Zitat:
Was ist denn "o:alarmmanger", ist das in XE5 gültiger Delphi-Code, bzw. woher stammt er? |
AW: Grundsätzliche Fragen zu Android App's Entwicklung (XE5)
Zitat:
Also beim create der Klasse alarm:=TJAlarmManager.create(.. Bin aber schon ein Stück weiter, denn in Delphi XE5 gibt es eine Komponennte TNotificationCenter die das ganze kapselt.
Delphi-Quellcode:
Das Funktioniert auch.
procedure TNotificationsForm.btnSendScheduledNotificationClick(Sender: TObject);
var Notification: TNotification; begin { verify if the service is actually supported } if NotificationC.Supported then begin Notification := NotificationC.CreateNotification; try Notification.Name := 'MyNotification'; Notification.AlertBody := 'Delphi for Mobile is here!'; { Fired in 10 second } Notification.FireDate := Now + EncodeTime(0,0,10,0); { Send notification in Notification Center } NotificationC.ScheduleNotification(Notification); finally Notification.DisposeOf; end; end end; Nur für einen Wecker so nicht brauchbar. Denn ich müsste beim Einstellen der Weckerapp für jeden Wecktag quasi ein NotificationC.ScheduleNotification(Notification); erstellen Wenn der Wecker aber ohne "Pflege" das ganze Jahr und darüber hinaus funktionieren soll, ist dies keine praktikable Methode. Alternativ wäre es denkbar beim Onlocalreceive event des TNotificationCenters den nächsten "Weckerdate" zu erstellen. Man sollte meinen das dieses event beim Erreichen des Firedates angestoßen wird :roll: - Tut es aber nicht,keinen Plan warum. Außerdem poppt beim Erreichen des Firedates nur kurz eine Message auf, mit einem kurzem Beep. Sehe bisher keine Möglichkeit dies zu ändern, oder auch eine Melodie abzuspielen. Auch ein Studieren der FMX.Notification unit brachte mich nicht wirklich weiter. Die Dokumentation zu dem Thema ist leider sehr spärlich. |
AW: Grundsätzliche Fragen zu Android App's Entwicklung (XE5)
Hi, wieder mal eine Grundsätzliche Frage:
Eine App die ich direkt in XE5 auf ein HTC Handy (2.3.5) baue läuft einwandfrei. Wenn ich die apk Datei auf meinem Android Tablett (4.0.4) starte wird der Bildschirm schwarz. War für 2.3.5 compiliert ist sollte auch auf 4.0.4 laufen - oder nicht ? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz