Delphi Can
FMX Android Service Segmentation Fault (11) hatası - Baskı Önizleme

+- Delphi Can (https://www.delphican.com)
+-- Forum: Delphi (https://www.delphican.com/forumdisplay.php?fid=3)
+--- Forum: Mobil Platform - FireMonkey (FMX) (https://www.delphican.com/forumdisplay.php?fid=7)
+--- Konu Başlığı: FMX Android Service Segmentation Fault (11) hatası (/showthread.php?tid=6434)



FMX Android Service Segmentation Fault (11) hatası - vedat33 - 24-11-2021

Merhabalar, locationsensor componentinin kullanıldığı bir fmx uygulamam var. Telefona derlediğimde sıkıntısız çalışıyor. Bir local android service oluşturup bu service içerisinde basit bir notification gösterme işlemi yapmaya çalışıyorum. Service ' yi uygulamada formun oncreate olayında başlatıyorum. Bu şekilde telefona derlediğim zaman uygulama kendisini kapatıyor ve bir daha açılmıyor. Debug yaptığımda ise segmentation fault (11) hatası veriyor. Belki sorun notification kısmında olmuştur diyerek bu kısmı yorum haline getiriyorum ama aynı sorun devam ediyor. Örnek uygulamaları takip ederek yapmama rağmen sorunun nerede olduğunu çözemedim, yardımcı olursanız çok sevinirim ( Rad Studio 11 kullanıyorum )


Cvp: FMX Android Service Segmentation Fault (11) hatası - RAD Coder - 25-11-2021

Muhtemelen Lokasyon bilgisi boş (NAN) geldiği için bu hata oluşuyordur. 
Enlem veya Boylam bilgisi yoksa işlem yaptırmamanız gerekiyor. 
Kodunuzu şu kontrol blokları arasına alarak test edin.
  if not (IsNAN(NewLocation.Latitude) or IsNAN(NewLocation.Longitude)) then
  begin
   //Enlem ve boylamı kullandığınız kod alanı
 end;



Cvp: FMX Android Service Segmentation Fault (11) hatası - vedat33 - 25-11-2021

(25-11-2021, Saat: 09:32)RAD Coder Adlı Kullanıcıdan Alıntı: Muhtemelen Lokasyon bilgisi boş (NAN) geldiği için bu hata oluşuyordur. 
Enlem veya Boylam bilgisi yoksa işlem yaptırmamanız gerekiyor. 
Kodunuzu şu kontrol blokları arasına alarak test edin.
  if not (IsNAN(NewLocation.Latitude) or IsNAN(NewLocation.Longitude)) then
  begin
   //Enlem ve boylamı kullandığınız kod alanı
 end;

Cevabınız için teşekkürler. Service içerisinde lokasyonla alakalı hiçbirşey yapmıyorum, sadece notification göstermeye çalışıyorum. Lokasyon işlemleri ana uygulamanın içerisinde yapılıyor ve bunun kontrolünü ana uygulamada zaten yapıyorum. Servisi çağırdığım zaman böyle bir hata ile karşılaşıyorum. Servisi çağırmazsam herşey sıkıntısız çalışmaya devam ediyor


Cvp: FMX Android Service Segmentation Fault (11) hatası - RAD Coder - 25-11-2021

Android platformunda Segmentation Fault (11)  genel bir hata, tıpkı access violation gibi.
Detaylı debug yaparak hatanın kaynağını tespit etmeniz gerekiyor.
Mobil uygulamalarda debug'ın yetersiz kaldığı durumlar malesef ki sık oluyor.
Bu nedenle şu tool'u kullanmanızı önereceğim.
Device Lens  

[attachment=1907]

Bu uygulamayı çalıştırdıktan sonra yüklediğiniz uygulamanın tüm olayları ekrana yansıyacaktır. 
hatalı kısımlar kırmızı font ile gösterilecektir.


FMX Android Service Segmentation Fault (11) hatası - vedat35 - 25-11-2021

David in yazdığı bu lens uygulamasını tavsiye etmiyorum pek düzgün çalıştığıda söylenemez,

bu sebeple android sdk ile gelen cihaz loglarını görebileceğiniz monitor uygulamasını öneririm.

örneğin kendi bilgisayrımda aşağıdaki konumdadır, monitor.exe C:\ aratılarak bulunabilir.

C:\Users\Public\Documents\Embarcadero\Studio\22.0\CatalogRepository\AndroidSDK-2525-22.0.42600.6491\tools\lib\monitor-x86\monitor.exe

Android-Debug-Monitor.png


Cvp: FMX Android Service Segmentation Fault (11) hatası - vedat33 - 26-11-2021

Zaman ayırdığınız için teşekkür ediyorum, problem çözüldü. Android service ler çoğu fmx objelerini çalıştırmakta sıkıntı çekiyor. Ben servis içerisine timer componenti eklediğimde otomatik olarak uses içerisine FMX.Types class ını ekliyor ve bu class programın kapanmasına sebep oluyor. Timer ve class ını kaldırdığımda hata gidiyor. Servis içerisinde FMX objeleri yerine native işlemlerle ihtiyacımızı karşılamayı tavsiye ettiler bu  forum da https://en.delphipraxis.net/topic/5902-fmx-android-service-segmentation-fault-11/?tab=comments#comment-51499