İstanbul
+90 543 947 95 80
info@jeffbezosweb.com

ACTION_PICK’i Uygulamak

Web Danışmanlık Hizmeti, Seo Hizmeti Al, Mobile Uygulama Yaptır, Back Link Satın Al, Blog Yazdırmak İstiyorum, Web Sitemi Tanıtmak İstiyorum, İngilizce Blog Yazdırmak İstiyorum, Makale YAZDIRMA siteleri, Parayla makale YAZDIRMA, Seo makale fiyatları, Sayfa başı yazı yazma ücreti, İngilizce makale yazdırma, Akademik makale YAZDIRMA, Makale Fiyatları 2022, Makale yazma, Blog Yazdırma, Tasarım Yaptırmak İstiyorum, Tüm bu hizmetlerimizden yararlanmak için mail kanalımızı veya sağ alt köşedeki Whatsapp tuşumuzu kullanabilirsiniz. info@jeffbezosweb.com

ACTION_PICK’i Uygulamak

HTTP Post İstekleri

Amaç Kategorilerini Anlamak

Etkinlikleri kategoriler halinde sınıflandırabilir, böylece bir kategori adına göre arayabilirsiniz. Örneğin, başlatma sırasında Android, kategorisi (etiket olarak da bilinir) CATEGORY_LAUNCHER olarak işaretlenmiş etkinlikleri arar. Daha sonra bu etkinlik adlarını ve simgelerini alır ve bunları başlatmak için ana ekrana yerleştirir.

Başka bir örnek: Android, başlatma sırasında ana ekranı göstermek için CATEGORY_HOME olarak etiketlenmiş bir etkinlik arar. Benzer şekilde, CATEGORY_GADGET, bir etkinliği başka bir etkinliğin içine gömülmeye veya yeniden kullanılmaya uygun olarak işaretler.

CATEGORY_LAUNCHER gibi bir kategori için dizenin biçimi, kategori tanımlama kuralına uygundur. Intent sınıfı için aşağıdaki Android SDK URL’sinde bu etkinlik kategorilerinin ayrıntılarını okuyabilirsiniz.

Bir aktiviteyi başlatmak için bir niyet kullandığınızda, bir kategori belirleyerek seçilecek aktivite türünü belirleyebilirsiniz. Veya belirli bir kategoriyle eşleşen etkinlikleri arayabilirsiniz. Aşağıda, CATEGORY_SAMPLE_CODE kategorisiyle eşleşen bir dizi ana etkinliği almak için bir örnek verilmiştir.

Birden fazla etkinlik niyetle eşleşecek, peki Android hangi etkinliği seçecek? Bunu çözmek için Android, çalıştırılacak birini seçebilmeniz için tüm olası etkinlikleri listeleyen bir “Eylemi tamamla” iletişim kutusu sunar.

Android’in varsayılan ana sayfasını kullanmak istemiyorsanız, kendi sayfanızı yazabilir ve etkinliğin HOME kategorisinde olduğunu beyan edebilirsiniz. Bu durumda, şu anda birden fazla ev etkinliği kayıtlı olduğundan, önceki kod size ev etkinliğinizi açma seçeneği sunar.

 Bileşenlerine Çözümleme Kuralları

Şimdiye kadar, niyetlerle ilgili bir dizi yönü tartıştık. Özetlemek gerekirse, eylemlerden, veri URI’lerinden, ekstra verilerden ve son olarak kategorilerden bahsettik. Bu yönler göz önüne alındığında, Android, etkinliklerin amaçlarını çözmek için aşağıdaki algoritmayı kullanır.

Hiyerarşinin tepesinde, ayrıcalıklı bir havayla, bir amaca iliştirilmiş bileşen adı yer alır. Bu ayarlanırsa, niyetin diğer tüm yönleri veya nitelikleri yoksayılır ve yürütme için bu bileşen seçilir.

Android daha sonra amacın eylem özelliğine bakar. Niyet bir eylemi gösteriyorsa, hedef aktivite bu eylemi niyet filtresinin bir parçası olarak listelemelidir. Başka hiçbir öznitelik belirtilmezse, Android bu etkinliği başlatır. Birden çok etkinlik varsa, Android etkinlik seçiciyi sunacaktır.

Android daha sonra amacın veri kısmına bakar. Niyet bir veri URI’si belirtiyorsa, niyette zaten sağlanmamışsa tür bu URI’den ContentProvider.getType() aracılığıyla alınır.

Hedef etkinliğin, bu türdeki verileri işleyebileceğini bir niyet filtresi aracılığıyla belirtmesi gerekir. Veri URI’si bir içerik URI’si değilse veya veri türü belirtilmemişse, URI şeması dikkate alınır. Hedef aktivite, daha sonra, bu tür şemanın URI’lerini işleyebileceğini belirtmelidir.

Android daha sonra kategoriye bakar. Android, yalnızca bu kategoriyle eşleşen etkinlikleri seçecektir. Sonuç olarak, niyet kategorisi belirtilirse, hedef aktivite bu kategoriyi kendi niyet filtresinde bildirmelidir.


İntent-filter nedir
Android Intent Nedir
Activity RESULT_ launcher nedir


ACTION_PICK’i Uygulamak

Şimdiye kadar, herhangi bir geri sonuç beklemeden, esas olarak başka bir faaliyeti çağrıştıran niyetler veya eylemler uyguladık. Şimdi çağrıldıktan sonra bir değer döndürdüğü için biraz daha ilgili bir eyleme bakalım. ACTION_PICK böyle genel bir eylemdir.

ACTION_PICK fikri, öğelerin listesini görüntüleyen bir aktivite başlatmaktır. Etkinlik, kullanıcının o listeden bir öğe seçmesine izin vermelidir. Kullanıcı öğeyi seçtikten sonra etkinlik, seçilen öğenin URI’sini arayana geri göndermelidir. Bu, belirli bir türdeki öğeleri seçmek için UI işlevselliğinin yeniden kullanılmasına izin verir.

Bir Android içerik imlecine işaret eden bir MIME türü kullanarak seçim yapılacak öğe koleksiyonunu belirtmelisiniz. Bu URI’nin gerçek MIME türü aşağıdakine benzer görünmelidir.

URI’ye dayalı olarak içerik sağlayıcıdan veri almak etkinliğin sorumluluğundadır. Verilerin mümkün olduğunda içerik sağlayıcılara kapsüllenmesinin nedeni de budur.

Bunun gibi veri döndüren tüm eylemler için startActivity()’yi kullanamayız çünkü startActivity() herhangi bir sonuç döndürmez. startActivity(), yeni aktiviteyi ayrı bir ileti dizisinde kalıcı bir iletişim kutusu olarak açtığı ve etkinliklere katılmak için ana ileti dizisinden ayrıldığı için bir sonuç döndüremez.

Başka bir deyişle, startActivity(), çağrılan aktivitede ne olduğunu belirtmek için geri çağırma içermeyen eşzamansız bir çağrıdır. Ancak veri döndürmek istiyorsanız, startActivity() üzerinde bir geri aramayla birlikte gelen startActivityForResult() adlı bir varyasyon kullanabilirsiniz.

Bu yöntem, sonuç almak istediğiniz bir etkinliği başlatır. Bu aktiviteden çıkıldığında, kaynak aktivitenin onActivityResult() yöntemi verilen requestCode ile çağrılacaktır. 

requestCode, startActivityForResult() yöntemine ilettiğiniz şeydir. resultCode, RESULT_OK, RESULT_CANCELED veya özel bir kod olabilir. Özel kodlar RESULT_FIRST_USER’de başlamalıdır. Intent parametresi, çağrılan aktivitenin döndürmek istediği tüm ek verileri içerir. ACTION_PICK durumunda, niyette döndürülen veriler, tek bir öğenin veri URI’sine işaret eder.

Bunun işe yaraması için, uygulayıcının bir PICK’in gereksinimlerini açıkça karşılayan bir kodu olmalıdır. Google örnek Notepad uygulamasında bunun nasıl yapıldığına bakalım. Öğe listesinde öğe seçildiğinde, etkinliği başlatan amacın bir PICK amacı olup olmadığı kontrol edilir. Öyleyse, veri URI’si yeni bir amaç içinde ayarlanır ve setResult() aracılığıyla döndürülür.

GET_CONTENT İşlemini Uygulamak

ACTION_GET_CONTENT, ACTION_PICK’e benzer. ACTION_PICK durumunda, bir not koleksiyonu gibi bir öğeler koleksiyonuna işaret eden bir URI belirtiyorsunuz. Eylemin notlardan birini seçip arayana geri göndermesini bekleyeceksiniz.

ACTION_GET_CONTENT durumunda, Android’e belirli bir MIME türünde bir öğeye ihtiyacınız olduğunu belirtirsiniz. Android, bu öğelerden birini oluşturabilen etkinlikleri veya bu MIME türünü karşılayan mevcut bir öğeler kümesinden seçim yapabilen etkinlikleri arar.

onActivityResult()’a yanıt verme kodunun geri kalanı, önceki ACTION_PICK örneğiyle aynıdır. Aynı MIME türünü döndürebilen birden çok etkinlik varsa, Android size bir etkinlik seçmenize izin vermek için seçici iletişim kutusunu gösterir.

Bununla birlikte, varsayılan seçici farklı bir başlık seçmenize izin vermeyebilir. Bu kısıtlamayı gidermek için Android, Intent sınıfında, başlığı değiştirilebilen özel bir seçici kullanmanıza izin veren createChooser yöntemini sağlar. 


Web sitelerinizi, arama motorlarında en yukarı getirmek adına sizlere 3 adet paket öneriyoruz. Bu paketler sayesinde web siteleriniz aramalarda 1 yıl içerisinde en yukarıya tırmanacaktır. 

1) Backlink Paketi  50 $ (Yıllık Ücret)
2) Hızlandırma Paketi 300 $ (Yıllık Ücret)
3) Kelime Yönlendirme Paketi 150 $ (Aylık Ücret)


 

 

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

× Bize Whatsapp'tan Ulaşın