Tüm Platformlar için Hızlı Uygulama Geliştirme --->    Kitabımız...      Delphi

Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 3/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Cihazın Ekran Kilidi ve Home Tuşu
#1
Merhaba Arkadaşlar;
Android cihazlarda Delphi ile yazdığım program çalışırken cihazın Home tuşuna ve Ekran kilidine basıldığını anlayan bir delphi kodu varmıdır?
Cevapla
#2
Konuyu uzun süredir araştırıyorum ama sağlıklı bir sonuç bulamadım. Peki telefon çalınca uygulamanın durdurulması işlemi hakkında bilgisi olan var mı? Örneğin uygulamada MediaPlayer ile bir müzik çalıyor ve Android işletim sistemi olan telefonumuza bir çağrı geldiğinde müziği kapatmak istiyorum. Bunu nasıl yapabilirim?
Cevapla
#3
(27-02-2017, Saat: 08:29)dnzmobile Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlMerhaba Arkadaşlar;
Android cihazlarda Delphi ile yazdığım program çalışırken cihazın Home tuşuna ve Ekran kilidine basıldığını anlayan bir delphi kodu varmıdır?

Barış Atalay üstad veya Fesih Bey bu konularda ustadır, onlardan bir cevap beklemek lazım. Bilse bilse onlar bilir.

(02-03-2017, Saat: 10:26)dnzmobile Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlKonuyu uzun süredir araştırıyorum ama sağlıklı bir sonuç bulamadım. Peki telefon çalınca uygulamanın durdurulması işlemi hakkında bilgisi olan var mı? Örneğin uygulamada MediaPlayer ile bir müzik çalıyor ve Android işletim sistemi olan telefonumuza bir çağrı geldiğinde müziği kapatmak istiyorum. Bunu nasıl yapabilirim?

Bu konuda pek bir bilgim yok ama, Android işletim sisteminin kendi özelliği değil midir o? Yani müzik çalarken telefon çalarsa, işletim sistemi kendisi tüm çalan müzikleri durdurup gelen çağrının sesini çalar. Yani en azından iOS'ta öyle, android için de aynısı olduğunu sanıyorum.

E.O.F.  (End Of Fun )
Rolleyes
Cevapla
#4
Sonunda uzun bir çalışmanın ardından nasıl yapacağımı buldum. Şimdi bir örnek ile anlatacağım. Umarım başkalarının da işine yarar.
Öncelikle cihazın Home tuşunun yada kilit tuşunu aramak bir hataydı. Bunun yerine uygulama aktifken yapılan değişikliği izlemek doğru olacaktı. Yani uygulama çalışıyorken hiç bir tuşa basmasanız bile belirli bir süre cihaz uyku moduna geçer. Kilit tuşuna bassanızda aynı durum oluşur.


Aşağıdaki program bir uygulama da mp3 çalmakta. Home tuşuna yada kilite basıldığında uygulama daki çalan müzik duracak, uygulama tekrar aktif edildiğinde müzik çalmaya kaldığı yerden devam edecektir.

uses
FMX.Platform

 public
   { Public declarations }
   function HandleAppEvent(   AAppEvent : TApplicationEvent;   AContext  : TObject ) : Boolean;
 end;

function TForm1.HandleAppEvent(   AAppEvent : TApplicationEvent;   AContext  : TObject ) : Boolean;
begin
   case AAppEvent of

     TApplicationEvent.BecameActive :
     mediaplayer1.Play;                     // tekrar çalıştırma
     TApplicationEvent.WillBecomeInactive :
       ;
     TApplicationEvent.EnteredBackground :
     mediaplayer1.Stop ;                      // geriye atma

   Result := True;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
mediaplayer1.FileName := TPath.Combine(TPath.GetDocumentsPath,'bgm.mp3');
MediaPlayer1.Play;
end;

procedure TForm1.FormCreate(Sender: TObject);
var
   SvcEvents : IFMXApplicationEventService;
begin
   if TPlatformServices.Current.SupportsPlatformService
     ( IFMXApplicationEventService, IInterface( SvcEvents ) )
   then
     SvcEvents.SetApplicationEventHandler( HandleAppEvent );
end;

Ancak halen telefona çağrı geldiğinde uygulamayı durduramadım, muhtemelen IFMXPhoneDialerService ile ilgili bir durum var. Umarım bunuda bulabiliriz. Bulursam mutlaka buradan yazarım.
Cevapla
#5
Telefona çağrı geldiğinde bunu yakalayan örnekler forumda da olduğunu hatırlıyorum, yada konusu geçmişti.
Ağlarsa kablosuz ağlar, gerisi yerel ağlar...
Cevapla
#6
(03-03-2017, Saat: 17:46)ramazan_t Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(27-02-2017, Saat: 08:29)dnzmobile Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlMerhaba Arkadaşlar;
Android cihazlarda Delphi ile yazdığım program çalışırken cihazın Home tuşuna ve Ekran kilidine basıldığını anlayan bir delphi kodu varmıdır?

Barış Atalay üstad veya Fesih Bey bu konularda ustadır, onlardan bir cevap beklemek lazım. Bilse bilse onlar bilir.

(02-03-2017, Saat: 10:26)dnzmobile Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlKonuyu uzun süredir araştırıyorum ama sağlıklı bir sonuç bulamadım. Peki telefon çalınca uygulamanın durdurulması işlemi hakkında bilgisi olan var mı? Örneğin uygulamada MediaPlayer ile bir müzik çalıyor ve Android işletim sistemi olan telefonumuza bir çağrı geldiğinde müziği kapatmak istiyorum. Bunu nasıl yapabilirim?

Bu konuda pek bir bilgim yok ama, Android işletim sisteminin kendi özelliği değil midir o? Yani müzik çalarken telefon çalarsa, işletim sistemi kendisi tüm çalan müzikleri durdurup gelen çağrının sesini çalar. Yani en azından iOS'ta öyle, android için de aynısı olduğunu sanıyorum.

Maalesef Android'te arama gelince uygulamanın sesi kapanmıyor.
Cevapla
#7
Selamlar,

Formun FormKeyUp olayında aşağıdaki kodu dener misiniz. vkHardwareBack yerine vkHome gibi birşey varmı diye bir bakın tam hatırlayamadım cünkü.

if (Key = vkHardwareBack) then
Begin

Key := 0;

End;
Yeni Nesil Yazılımcı
Linkedin: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Blog adresim: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
WWW
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Uygulamamın açılışındaki siyah ekran Hakkında webprog 5 145 19-01-2018, Saat: 19:38
Son Yorum: mcuyan
Question multiview tam ekran BY-HAYALET 2 192 20-12-2017, Saat: 15:52
Son Yorum: mad85
Question android ekran uyumsuzluğu yardım ! BY-HAYALET 5 131 02-12-2017, Saat: 13:27
Son Yorum: Fesih ARSLAN
  Rad Studio Android Ekran Boyutları Problemi pakv 3 302 12-09-2017, Saat: 11:54
Son Yorum: barisatalay
  MultiView İçindeki ComboEdit OnChange Olayı Siyah Ekran Sorunu pro_imaj 2 226 03-09-2017, Saat: 17:45
Son Yorum: pro_imaj



Konuyu Okuyanlar: 1 Ziyaretçi