Yorumları: 223
Konuları: 50
Kayıt Tarihi: 10-11-2016
Rep Puanı: 268 Acemi
(16-05-2018, Saat: 21:54)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: (16-05-2018, Saat: 21:22)codder71 Adlı Kullanıcıdan Alıntı: Merhabalar hocam siz soyleyince yeni bir proje acip denedim. Bir fark olmadi hocam ayni zamanda kurulum pencereleriside degisiyor ve izin istemeden kuruyor ve izinleri kapatiyor. Uygulama bundan dolayi acilmiyormus. Izinleri manuel acinca uygulama calisti ama ustteki bar beyaz duruyor. Mevcut uygulamamda ana formda sikinti yok diger ekledigim formlarda gorunuyor. Yeni projede ise tum formlarda mevcut beyaz bar.
Eklemek istedigim bir diger bilgi ise hocam eski versyon bir cihazda sorun cikmamasi (4 versiyon bir cihaz)
Kurulum ekrani resmi

Android 6.0 ve sonraki sürümlerde uygulama izinleri kullanıcılar tarafından sonradan düzenlenebiliyor. Sorunun kökenini tespit etmişsiniz zaten. Eski sürümlerde çalışma sebebi de belli oldu; uygulamada talep edilen izinlerin zorunlu olarak kurulum öncesi toplu kabul edilmesinden kaynaklanıyordur.
Android 6.0 ve daha üstü bir sürüm için bu ve benzeri kırılmaların önüne nasıl geçebiliriz?
Bunun için kulandığınız kaç çeşit izin varsa her biri için ayrı ayrı izin kontrolü yapılmalı, izin yoksa bu izni kullanan metodu çağırmadan önce kullanıcıyı uyarın ve metodu çağırmayın.
Örneğin, internetimiz açık olmadan bir bankanın mobil uygulamasını açtığınızda, internet ihtiyacı olduğunu bir mesajla bildiriyor ve uygulama açılmıyor. Açmaya çalışsa muhtemelen kırılacaktır.
Sizde buna benzer metodlar geliştirmelisiniz.
Bar olarak tabir ettiğiniz bileşen toolbar ise her Android sürümünde farklı bir renge büründüğünü görüyoruz. Standart bar renk tonu için SDK bağımlılığı olmayan (Native bileşenlerin dışında) bileşenler kullanmalısınız. Örneğin TRectangle.
Hocam izinleri kontrol etmek kolay zaten istedigim izini uygulamanin ilk girisinde kullaniyorum. Burdaki asil sikinti giriste izinin verilip verilmedigini sorgulamak ve izni run timeda talep etmek bunu yapan uyulamalar gordum. Mevzu bunu delphide yapailiyozmu ?
Barin beyaz olma sikintisi ise hocam bilesenden kaynaklanmiyor. Bu durum en ustteki saat sarj durumunu vb. olaylari goseren barda gerceklesiyor. Ama eski uygumada ana giris ekraninda olmayipta neden 2. 3. formlarda oluyor anlayamadim. Bar bembeyaz oluyor ve saat sarj durumu gibi verileri gosteren veriler kayboluyor.
Duzenleme yapmadan olan uygulama Duzenleme yaptiktan sonra beyaz olan bar
Yorumları: 4.246
Konuları: 381
Kayıt Tarihi: 07-07-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 17.117 Üstad
17-05-2018, Saat: 11:16
(Son Düzenleme: 17-05-2018, Saat: 11:19, Düzenleyen: Fesih ARSLAN.)
(16-05-2018, Saat: 23:17)codder71 Adlı Kullanıcıdan Alıntı: (16-05-2018, Saat: 21:54)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Android 6.0 ve sonraki sürümlerde uygulama izinleri kullanıcılar tarafından sonradan düzenlenebiliyor. Sorunun kökenini tespit etmişsiniz zaten. Eski sürümlerde çalışma sebebi de belli oldu; uygulamada talep edilen izinlerin zorunlu olarak kurulum öncesi toplu kabul edilmesinden kaynaklanıyordur.
Android 6.0 ve daha üstü bir sürüm için bu ve benzeri kırılmaların önüne nasıl geçebiliriz?
Bunun için kulandığınız kaç çeşit izin varsa her biri için ayrı ayrı izin kontrolü yapılmalı, izin yoksa bu izni kullanan metodu çağırmadan önce kullanıcıyı uyarın ve metodu çağırmayın.
Örneğin, internetimiz açık olmadan bir bankanın mobil uygulamasını açtığınızda, internet ihtiyacı olduğunu bir mesajla bildiriyor ve uygulama açılmıyor. Açmaya çalışsa muhtemelen kırılacaktır.
Sizde buna benzer metodlar geliştirmelisiniz.
Bar olarak tabir ettiğiniz bileşen toolbar ise her Android sürümünde farklı bir renge büründüğünü görüyoruz. Standart bar renk tonu için SDK bağımlılığı olmayan (Native bileşenlerin dışında) bileşenler kullanmalısınız. Örneğin TRectangle.
Hocam izinleri kontrol etmek kolay zaten istedigim izini uygulamanin ilk girisinde kullaniyorum. Burdaki asil sikinti giriste izinin verilip verilmedigini sorgulamak ve izni run timeda talep etmek bunu yapan uyulamalar gordum. Mevzu bunu delphide yapailiyozmu ?
Barin beyaz olma sikintisi ise hocam bilesenden kaynaklanmiyor. Bu durum en ustteki saat sarj durumunu vb. olaylari goseren barda gerceklesiyor. Ama eski uygumada ana giris ekraninda olmayipta neden 2. 3. formlarda oluyor anlayamadim. Bar bembeyaz oluyor ve saat sarj durumu gibi verileri gosteren veriler kayboluyor.
Duzenleme yapmadan olan uygulama Duzenleme yaptiktan sonra beyaz olan bar

Birileri yapabiliyorsa biz DelphiCan'lar da yapabilir. Delphi'nin Multi-Platform olarak sunmuş olduğu mimaride sahip olduğu bir çok kütüphane ve bir çok RTTI metodlarının yanı sıra hedef platformun tüm API'lerini kullanabilecek şekilde bir alt yapı sunmuştur.
Bu da şu demektir ki; Delphi ile (temel sınıfları ile) yapamadığınız bir çok işlemi hedef platform API'leri ile yine Delphi'yi kullanarak doğrudan yapabiliriz.
İzin kontrolünü dinamik nasıl yapacağınız konusunda bir mini makale ( Multi Platform - Uygulama İzin Kontrolü) yazdım. Umarım faydalı olur.
Cihaz status barı'nın görünmemesi, form özelliklerinde sonradan yapmış olduğunuz değişikliklerden kaynaklanıyor olabilir.
Örneğin; Border özellikleri, FormFactor, FormFamily, FormStyle, FullScreen, ShowFullScreen veya Transparency.
Önceki Delphi sürümlerinde Project > Options > Application bölümünde yer alan Splash gravity'de etkilemekteydi.
DelphiCan'dır!
Yorumları: 223
Konuları: 50
Kayıt Tarihi: 10-11-2016
Rep Puanı: 268 Acemi
(17-05-2018, Saat: 11:16)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: (16-05-2018, Saat: 23:17)codder71 Adlı Kullanıcıdan Alıntı: Hocam izinleri kontrol etmek kolay zaten istedigim izini uygulamanin ilk girisinde kullaniyorum. Burdaki asil sikinti giriste izinin verilip verilmedigini sorgulamak ve izni run timeda talep etmek bunu yapan uyulamalar gordum. Mevzu bunu delphide yapailiyozmu ?
Barin beyaz olma sikintisi ise hocam bilesenden kaynaklanmiyor. Bu durum en ustteki saat sarj durumunu vb. olaylari goseren barda gerceklesiyor. Ama eski uygumada ana giris ekraninda olmayipta neden 2. 3. formlarda oluyor anlayamadim. Bar bembeyaz oluyor ve saat sarj durumu gibi verileri gosteren veriler kayboluyor.
Duzenleme yapmadan olan uygulama Duzenleme yaptiktan sonra beyaz olan bar

Birileri yapabiliyorsa biz DelphiCan'lar da yapabilir. Delphi'nin Multi-Platform olarak sunmuş olduğu mimaride sahip olduğu bir çok kütüphane ve bir çok RTTI metodlarının yanı sıra hedef platformun tüm API'lerini kullanabilecek şekilde bir alt yapı sunmuştur.
Bu da şu demektir ki; Delphi ile (temel sınıfları ile) yapamadığınız bir çok işlemi hedef platform API'leri ile yine Delphi'yi kullanarak doğrudan yapabiliriz.
İzin kontrolünü dinamik nasıl yapacağınız konusunda bir mini makale (Multi Platform - Uygulama İzin Kontrolü) yazdım. Umarım faydalı olur.
Cihaz status barı'nın görünmemesi, form özelliklerinde sonradan yapmış olduğunuz değişikliklerden kaynaklanıyor olabilir.
Örneğin; Border özellikleri, FormFactor, FormFamily, FormStyle, FullScreen, ShowFullScreen veya Transparency.
Önceki Delphi sürümlerinde Project > Options > Application bölümünde yer alan Splash gravity'de etkilemekteydi.
Merhabalar
Hocam elinize sağlık güzel doküman olmuş bu sayede izinleri sorgulatabiliriz. Tabi bu sorunun bir ayağı bende bir kaç döküman buldum ama hepsi java dilinde bunları delphiye nasıl uyarlarız bilemiyorum. Fakat hocam dokümanınızdaki bilgilerle en azından kullanıcıyı bilgilendirmek amacı ile iş göreceğini düşünüyorum. Burada araştırmalarım sonucu önemli izinler ve önemli olmayan izinler şeklinde google katagorilendirmiş bu önemli olan izinleri sadece içerden izin sorgusu yaparak kullanıcıyı bilgilendirip izni verip vermediğini soruyormuş diğer izinleri ise otomatik olarak kendi açıyormuş acaba bu izinler hangileri bu konuda bilginiz var mı ?
izinlerle ilgili bulduğum doküman
ikinci sorun ise hocam dediğiniz yerlere baktım bir sonuca varamadım ama borderstyle yı none yaptığımız zaman tam ekran oluyor ve beyazlık kayboluyor en azından bu şekilde idare edecek bir duruma getirebileceğimi düşünüyorum.
Yorumları: 4.246
Konuları: 381
Kayıt Tarihi: 07-07-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 17.117 Üstad
(17-05-2018, Saat: 16:04)codder71 Adlı Kullanıcıdan Alıntı: (17-05-2018, Saat: 11:16)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Birileri yapabiliyorsa biz DelphiCan'lar da yapabilir. Delphi'nin Multi-Platform olarak sunmuş olduğu mimaride sahip olduğu bir çok kütüphane ve bir çok RTTI metodlarının yanı sıra hedef platformun tüm API'lerini kullanabilecek şekilde bir alt yapı sunmuştur.
Bu da şu demektir ki; Delphi ile (temel sınıfları ile) yapamadığınız bir çok işlemi hedef platform API'leri ile yine Delphi'yi kullanarak doğrudan yapabiliriz.
İzin kontrolünü dinamik nasıl yapacağınız konusunda bir mini makale (Multi Platform - Uygulama İzin Kontrolü) yazdım. Umarım faydalı olur.
Cihaz status barı'nın görünmemesi, form özelliklerinde sonradan yapmış olduğunuz değişikliklerden kaynaklanıyor olabilir.
Örneğin; Border özellikleri, FormFactor, FormFamily, FormStyle, FullScreen, ShowFullScreen veya Transparency.
Önceki Delphi sürümlerinde Project > Options > Application bölümünde yer alan Splash gravity'de etkilemekteydi.
Merhabalar
Hocam elinize sağlık güzel doküman olmuş bu sayede izinleri sorgulatabiliriz. Tabi bu sorunun bir ayağı bende bir kaç döküman buldum ama hepsi java dilinde bunları delphiye nasıl uyarlarız bilemiyorum. Fakat hocam dokümanınızdaki bilgilerle en azından kullanıcıyı bilgilendirmek amacı ile iş göreceğini düşünüyorum. Burada araştırmalarım sonucu önemli izinler ve önemli olmayan izinler şeklinde google katagorilendirmiş bu önemli olan izinleri sadece içerden izin sorgusu yaparak kullanıcıyı bilgilendirip izni verip vermediğini soruyormuş diğer izinleri ise otomatik olarak kendi açıyormuş acaba bu izinler hangileri bu konuda bilginiz var mı ?
izinlerle ilgili bulduğum doküman
ikinci sorun ise hocam dediğiniz yerlere baktım bir sonuca varamadım ama borderstyle yı none yaptığımız zaman tam ekran oluyor ve beyazlık kayboluyor en azından bu şekilde idare edecek bir duruma getirebileceğimi düşünüyorum.
Rica ederim, hayırlı olması dileğiyle.
Google'ın tehlikeli/sakıncalı olarak kategorize ettiği izin grupları: Dangerous permissions and permission groups.
DelphiCan'dır!
Yorumları: 220
Konuları: 46
Kayıt Tarihi: 16-03-2017
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 273 Acemi
09-07-2018, Saat: 08:28
(Son Düzenleme: 09-07-2018, Saat: 08:37, Düzenleyen: Fesih ARSLAN.)
(09-05-2018, Saat: 16:21)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Merhaba,
1- Proje klasöründeki AndroidManifest.template.xml konfigürasyon dosyasında,
<uses-sdk android:minSdkVersion="%minSdkVersion%" android:targetSdkVersion="%targetSdkVersion%" />
satırındaki %minSdkVersion% ve %targetSdkVersion% alanlarını 26 olarak değiştirin ve kaydedin.
Aşağıdaki gibi yapmanız gerekiyor.
<uses-sdk android:minSdkVersion="26" android:targetSdkVersion="26" />
2- Projeyi önce Clean, daha sonra Build edin.
Daha sonra .apk dosyasını yeniden yükleyin.
Bende sadece
<uses-sdk android:minSdkVersion="%minSdkVersion%" />
ve
<uses-sdk android:minSdkVersion="14" />
şeklinde yazıyor hocam bunları 26 yapınca da yüklenmiyor uygulama
Yorumları: 4.246
Konuları: 381
Kayıt Tarihi: 07-07-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 17.117 Üstad
(09-07-2018, Saat: 08:28)quiet1day Adlı Kullanıcıdan Alıntı: (09-05-2018, Saat: 16:21)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Merhaba,
1- Proje klasöründeki AndroidManifest.template.xml konfigürasyon dosyasında,
<uses-sdk android:minSdkVersion="%minSdkVersion%" android:targetSdkVersion="%targetSdkVersion%" />
satırındaki %minSdkVersion% ve %targetSdkVersion% alanlarını 26 olarak değiştirin ve kaydedin.
Aşağıdaki gibi yapmanız gerekiyor.
<uses-sdk android:minSdkVersion="26" android:targetSdkVersion="26" />
2- Projeyi önce Clean, daha sonra Build edin.
Daha sonra .apk dosyasını yeniden yükleyin.
Bende sadece
<uses-sdk android:minSdkVersion="%minSdkVersion%" />
ve
<uses-sdk android:minSdkVersion="14" />
şeklinde yazıyor hocam bunları 26 yapınca da yüklenmiyor uygulama
Yükleme anındaki uyarı nedir?
DelphiCan'dır!
Yorumları: 220
Konuları: 46
Kayıt Tarihi: 16-03-2017
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 273 Acemi
(09-07-2018, Saat: 08:38)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: (09-07-2018, Saat: 08:28)quiet1day Adlı Kullanıcıdan Alıntı: Bende sadece
<uses-sdk android:minSdkVersion="%minSdkVersion%" />
ve
<uses-sdk android:minSdkVersion="14" />
şeklinde yazıyor hocam bunları 26 yapınca da yüklenmiyor uygulama
Yükleme anındaki uyarı nedir?
Yorumları: 4.246
Konuları: 381
Kayıt Tarihi: 07-07-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 17.117 Üstad
(09-07-2018, Saat: 08:42)quiet1day Adlı Kullanıcıdan Alıntı: (09-07-2018, Saat: 08:38)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Yükleme anındaki uyarı nedir?

Muhtemelen, hata penceresinde görünen "Resim Ogretmenim Kodlar..." dizininden kaynaklı bir sorun görünüyor.
Projenizi UniCode içermeyen bir dizine taşıyın.
Sırasıyla Clear ve Build işlemlerini gerçekleştirin.
Bu iki işlemde sorun yoksa, uygulamayı hedef platfromda çalıştırın.
DelphiCan'dır!
Yorumları: 220
Konuları: 46
Kayıt Tarihi: 16-03-2017
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 273 Acemi
(09-07-2018, Saat: 08:56)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: (09-07-2018, Saat: 08:42)quiet1day Adlı Kullanıcıdan Alıntı: 
Muhtemelen, hata penceresinde görünen "Resim Ogretmenim Kodlar..." dizininden kaynaklı bir sorun görünüyor.
Projenizi UniCode içermeyen bir dizine taşıyın.
Sırasıyla Clear ve Build işlemlerini gerçekleştirin.
Bu iki işlemde sorun yoksa, uygulamayı hedef platfromda çalıştırın.
Telefonumda yüklü olan sürüm ile şu anki sürüm arasındaki dosya imza (Keystore=sertifika) farklılığından kaynaklanıyor.
Önceki sürümü kaldırınca yeni sertifika kurulmuş oldu, böylece sorun düzeldi.
Ayrıca ;
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="26" />
olarak kullanılması api sorununu çözüyor .
Teşekkürler @ Fesih ARSLAN
Yorumları: 645
Konuları: 85
Kayıt Tarihi: 04-10-2017
Aktif Kullandığınız Delphi Sürümü:
- Delphi 11
- Delphi 10.4
- Delphi 10.3
- Delphi 10.2
- Delphi 10.1
- Delphi 10
- Delphi XE Serisi
Rep Puanı: 2.772 Uzman
Merhaba @ Fesih ARSLAN Hocam
SDK Managerde apileri 26'ya çektim. Manifest dosyasında gerekli değişiklileri yaptım. Playede uygulamayı yükleyebiliyorum. Fakat Unidac SQLLite bağlanmıyor api levelini 26'ya çektikten sonra.
Yalnızım ama bir kente yürüyen ordu gibiyim, edebiyattan kaçınmalıyım..
|