AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Android-App und Hardware-Back

Ein Thema von sko1 · begonnen am 7. Nov 2017 · letzter Beitrag vom 17. Sep 2018
Antwort Antwort
Seite 1 von 3  1 23      
sko1

Registriert seit: 27. Jan 2017
588 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

Android-App und Hardware-Back

  Alt 7. Nov 2017, 11:04
Hallo,

bei Android sollen Apps ja eigentlich nicht geschlossen werden sondern beim Druck auf den Hardware-Back-Button nur "verschwinden" und im Hintergrund weiterlaufen.

Vielleicht doofe Frage, aber wie stellt man das an?

im OnKeyUp des Hauptformulars den vkHardwareBack abfragen ist klar, aber dann?
- Form.Close beendet das Programm
- Form.Hide beendet nicht aber ich komm nie wieder zur Anzeige des Forms
- den Homescreen anzeigen damit der das Programm in den Hintergrund schiebt, wie realisiert man das?

Ciao
Stefan
  Mit Zitat antworten Zitat
sko1

Registriert seit: 27. Jan 2017
588 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

AW: Android-App und Hardware-Back

  Alt 8. Nov 2017, 07:14
Hallo,

habe es selbst herausgefunden, der dritte Punkt oben ist der richtige Ansatz!
Also nichts im eigenen Programm mit dem Formular anstellen sondern die Mainaktivity des Handys anschubsen, die sorgt dann dafür das mein Programm weiterlaufend in den Hintergrund geschoben wird...

Ciao
Stefan
  Mit Zitat antworten Zitat
Rollo62
Online

Registriert seit: 15. Mär 2007
4.095 Beiträge
 
Delphi 12 Athens
 
#3

AW: Android-App und Hardware-Back

  Alt 8. Nov 2017, 07:23
Hallo Stefan,

interessant.

Das einfache .Terminate einer App ist ja angeblich verboten, sowohl bei Android & iOS.
Ich habe aber schonmal irgendwo gesehen das dies so gemacht wurde, und anscheinend auch funktionierte.
Nur weiss ich nicht mehr genau wo ich das gesehen hatte.

Wahrscheinlich ist deine Methode die Bessere, weil bei Mobile je keiner weiss was hinter der geschlossenen App kommen soll.
Der Homescreen ist sicher Richtig.

Update:
Für alle anderen OS mache ich übrigens:
Application.MainForm.Hide;

Rollo

Geändert von Rollo62 ( 8. Nov 2017 um 07:33 Uhr)
  Mit Zitat antworten Zitat
sko1

Registriert seit: 27. Jan 2017
588 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#4

AW: Android-App und Hardware-Back

  Alt 8. Nov 2017, 09:58
Mit Hide kommt der Homescreen wieder nach vorn, aber wie bekommst Du dann die Mainform wieder sichtbar?

Ciao
Stefan
  Mit Zitat antworten Zitat
Rollo62
Online

Registriert seit: 15. Mär 2007
4.095 Beiträge
 
Delphi 12 Athens
 
#5

AW: Android-App und Hardware-Back

  Alt 8. Nov 2017, 10:46
Ich benutze das auch nur zum Beenden der App.

Die MainForm wieder nach vorne holen (= App neu starten) geht wohl so nicht (wozu auch ?).
Wenn ich dich richtig verstehe willst du also nicht nur Beenden,
sondern auch das die App sich selbst wieder neu startet ?

Vermutlich geht das nur mit einem separaten AndroidService.
Man kann sich ja nicht selber am Schopf aus dem Sumpf ziehen ...

Wenn du meinst das die App einen anderen Intent aufruft, und nach dem Beendenr deine App wieder oben ist:
So sollte das in der Regel sein.

Rollo
  Mit Zitat antworten Zitat
sko1

Registriert seit: 27. Jan 2017
588 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#6

AW: Android-App und Hardware-Back

  Alt 8. Nov 2017, 16:02
Neín, so ganz hast Du mich nicht verstanden!

Ich möchte wenn man "Back" drückt, wie bei allen anderen Apps auch, dass dann das Programm "verschwindet" aber im Hintergrund weiterläuft. Klickt man sein Icon wieder an soll es im aktuellen Zustand wieder erscheinen.

Das geht nur indem man den "Hauptintent Homescreen" aktiviert (der versetzt das Programm nach hinten) und man ist wieder auf der Handy-Hauptseite...

Klickt man nun z.B. unter "zuletzt verwendet" auf das Programm oder startet es aus dem Menü heraus kommt es wieder in den Vordergrund und z.B. darin laufende Timer etc. sind nach wie vor aktiv!

Das ginge mit einem "sich selbst starten" gar nicht...

Einen anderen Intent (z.B. Drucken) kann ich auch aufrufen, nach dessen Beendigung bin ich wieder in meinem Programm...

Ciao
Stefan
  Mit Zitat antworten Zitat
Rollo62
Online

Registriert seit: 15. Mär 2007
4.095 Beiträge
 
Delphi 12 Athens
 
#7

AW: Android-App und Hardware-Back

  Alt 8. Nov 2017, 20:33
Ok, das macht Sinn.

Man könnte natürlich auch Beenden, und verher Sichern und danach den Status wieder Restaurieren.

Aber da ist nicht exakt das was du gerne hättest, würde aber in jedem Fall funktionieren.
Wenn man Alles restaurieren kann.

Rollo
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.930 Beiträge
 
Delphi 12 Athens
 
#8

AW: Android-App und Hardware-Back

  Alt 6. Dez 2017, 15:11
Startet ihr den Homescreen als App über einen Intent?
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
sko1

Registriert seit: 27. Jan 2017
588 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#9

AW: Android-App und Hardware-Back

  Alt 7. Dez 2017, 06:45
ja

Ciao
Stefan
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.930 Beiträge
 
Delphi 12 Athens
 
#10

AW: Android-App und Hardware-Back

  Alt 14. Mai 2018, 12:00
Wie würde das selbe für IOS aussehen?
Delphi-Quellcode:
Procedure OpenHomeScreen;
{$IFDEF ANDROID}
var
  Intent: JIntent;
{$ENDIF ANDROID}
Begin
{$IFDEF ANDROID}
  Intent := TJIntent.Javaclass.init(TJIntent.JavaClass.ACTION_MAIN);
  Intent.addCategory(TJIntent.JavaClass.CATEGORY_HOME);
  Intent.setFlags(TjIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK);
  TAndroidhelper.Activity.startActivity(Intent);
{$ENDIF ANDROID}
End;
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz