Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Delphi FMX Android, Uzun Uygulama Açılış Süresi.
#1
Merhaba arkadaşlar,

tüm formları project options dan auto createden kaldırdım

 
if (form2=Nil) then
  form2:=Tform2.Create(Application);
form2.Show;

yapısında gerektiğinde create edip ekranda gösteriyorum.
uygulamanın autocreate form ile açılış süresi android için 15sn civarinda idi.
autocreateden kaldırdıkdan sonra 7sn lere kadar düşdü, google playstore 13sn gösteriyor.

anladığım kadarıyla bu uses deki unitler bu gecikmeye sebep veriyor, ne tavsiye edersiniz nasıl açılışı hızlandırabilirim?
Cevapla
#2
Sizin derdinize pek derman olmayacak, işin farklı bir boyutunu belirteyim;
bu Android'in sorunu. iOS cihazda deneyin aradaki farkı görün. Hiç abartmıyorum en az 5 kat daha hızlı bir açılışa sahip.
Begin : = end / 2;
Cevapla
#3
delphide mobile uyg yazıyorsun. delphide yazılan mobile uygulama mutlaka biraz geç açılır zaten. çünkü ilkönce delphinin kendi katmanı yükleniyor sonra o katman senin yazdığın kodları uyguluyor. tabii senin iş akışın en önemli unsur ama en optimum yolu izlesen bile native bir uygulama gibi açılmaz delphide yaptığın uygulama. en azından ben delphinin mobileı çıktığında incelediğimde öyleydi. şimdi de değiştiğini zannetmiyorum, çünkü yapı bunun üzerine kurulu, bu sayede delphide yaptığın proje mobilede de çalışıyor, aslında senin yaptığın uygulamanın içinde android için ya da ios için yazılmış küçük bir delphi de yüklü gibi düşünebilirsin.
Cevapla
#4
Auto Create formlarınızı devre dışı bırakmak büyük bir artı. Bunu vcl tarafında da destekliyorum.

Şimdi sırada, autocreate bileşenlere geldi.

Şunu bir deneyin, boş bir form olan projeyi derleyin kaç saniyede açılıyor gözlemleyin.

daha sonra kullanılacak resim, icon vb gibi resource (kaynaklar), internet erişim provizyon alma, veritabanı bağlantısı için bağlantı testleri vs. ikincil, henüz create edilmemiş bir forma aktarın, lazım olduğunda ikincil formu create ederek devreye almayı deneyin. 

Kullandığınız mobil cihaz son teknoloji de olabilir eski de. Google Play doğası gereği API Level ne ise ona uygun en eski telefona göre açılış hızı belirlemek durumunda.

Açılış hızı karşılaştırmanızı boş formlu projeye göre yapınız.

IOS hızı da androide göre benzer şekilde  değerlendirmek yanıltmaz.

Emin olun hızınız çok artacaktır. En azından boş forma yaklaşacaktır. 

Başarılar.
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla
#5
(09-12-2020, Saat: 11:17)mrmarman Adlı Kullanıcıdan Alıntı: Auto Create formlarınızı devre dışı bırakmak büyük bir artı. Bunu vcl tarafında da destekliyorum.

Şimdi sırada, autocreate bileşenlere geldi.

Şunu bir deneyin, boş bir form olan projeyi derleyin kaç saniyede açılıyor gözlemleyin.

daha sonra kullanılacak resim, icon vb gibi resource (kaynaklar), internet erişim provizyon alma, veritabanı bağlantısı için bağlantı testleri vs. ikincil, henüz create edilmemiş bir forma aktarın, lazım olduğunda ikincil formu create ederek devreye almayı deneyin. 

Kullandığınız mobil cihaz son teknoloji de olabilir eski de. Google Play doğası gereği API Level ne ise ona uygun en eski telefona göre açılış hızı belirlemek durumunda.

Açılış hızı karşılaştırmanızı boş formlu projeye göre yapınız.

IOS hızı da androide göre benzer şekilde  değerlendirmek yanıltmaz.

Emin olun hızınız çok artacaktır. En azından boş forma yaklaşacaktır. 

Başarılar.

cevabınız için teşekkürler;

Şimdi sırada, autocreate bileşenlere geldi.
bu bileşenlerin tamamı şuanda autocreate edilmeyen formlarda duruyor.


- Şunu bir deneyin, boş bir form olan projeyi derleyin kaç saniyede açılıyor gözlemleyin.
yaklaşık 2sn, benim proje kod satırım compiler da 230bin görünüyor, bu halde 5-7sn arasına düşürebildim.


- daha sonra kullanılacak resim, icon vb gibi resource (kaynaklar), internet erişim provizyon alma, veritabanı bağlantısı için bağlantı testleri vs. ikincil, henüz create edilmemiş bir forma aktarın, lazım olduğunda ikincil formu create ederek devreye almayı deneyin. 

bu tarz birşey yok zaten, bunlar create anında uygulamayı hangup da bırakır, ya timer yada form show da hallediyorum bu işleri.

----------------------------------------------------------------------------------------

genel olarak problemim kullandığım 2. parti lisanslı componentlerin auto create edilmeyen formların uses lerinde bulunması,
ve bu unitlerin initilization anında bir takım işler yapması, bunları uses dende kaldıramıyoruz, ancak form create edilmemiş olsa bile uses unitleri çalıştırılıyor, kod şişkinliğinden ötürüde malesef açılış uzuyor.
Cevapla
#6
ilgili bileşenlerin initialization kısımlarını tespit edebiliyorsanız bunları // comment tagına alıp deneyin, süre açısından avantaj sağlıyorsa bileşen atamalarını manuele çekip, kendi manuel olarak atamalarınızın hemen önünde initialization'da belirtilen kodu kendi kodunuzdan ekleyin.

üçüncü parti unitlerin bir çoğu hem component hem de helper olarak çalışabiliyor. Siz görsel bileşen olarak koymadığınız sürece initialization'daki kısımları kendi kodunuza taşıyabilirsiniz.
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Exclamation Delphi 12 - Android 14 nevez 22 673 26-04-2024, Saat: 22:54
Son Yorum: nevez
  Delphi 12 IOS Simulatorde Uygulama Çalışmıyor elixir84 7 1.187 24-04-2024, Saat: 10:40
Son Yorum: elixir84
  Android Rehbere Kayıt Ekleme barissagir 6 355 04-04-2024, Saat: 09:36
Son Yorum: RAD Coder
  Delphi FMX Enter tuşu (dpad_center) yakalama tarkancengiz 8 359 20-03-2024, Saat: 15:54
Son Yorum: tarkancengiz
  Android’de Dosya Depolama ve Paylaşma-2: And 11 SDK 30 Scoped Storage SAF MediaStore emozgun 12 4.999 19-03-2024, Saat: 22:29
Son Yorum: nguzeller



Konuyu Okuyanlar: 1 Ziyaretçi