iOS Link Presentation Kütüphanesinin Xamarin Forms’da Kullanımı

Link presentation iOS 13 ile birlikte eklenen ve kendi native uygulamalarında zaten kullanılan bir kütüphanedir. Bu kütüphane sayesinde, geliştiriciler artık kendi uygulamalarında zengin URL’leri görüntülerken özelleştirebilirler.

Apple bu kütüphaneyi zaten kullanıyor demiştim yani son kullanıcı olarak buna mesajlarda veya diğer uygulamalarda denk gelmişizdir.

Bu görüntüyü uygulamamızda elde edebilmek için kullanacağımız linklerdeki web sitelerinde Open Graph etiketlerinin düzgün bir şekilde ayarlanmış olması gerekiyor. Örneğin bu yazının kaynağını görüntülersek aşağıdaki etiketleri görürüz.

Atanmış bu meta verilerini almak ve kullanmak için ise LinkPresentation kütüphanesine ait LPMetadataProvider sınıfını kullanabiliriz. Bu sınıfın içeriği de şu şekilde:

class LPMetadataProvider URL’deki meta verilerini çekmeye yarar.

class LPLinkMetadata URL’deki metada verileri çekildikten sonra bu nesneye yazılır..

class LPLinkView Link’in zengin içerikli görünümünü görsel olarak aktaran kontrol.

struct LPError LinkPresentation kütüphanesinden dönen hata.

Xamarin Forms projemizde bu kütüphaneyi kullanabiliriz. Bunun için öncelikle Portable katmanında View’den miras alan ve bindable bir Url property’si içeren bir kontrol oluştururuz.

Daha sonra bu Url property’si ile atanan sitelerin ön izlemelerini görüntülemek için bir LPLinkView oluşturmalı ve LPLinkMetadata nesnesini bu view’e atamalıyız. Bu işlemi yapabilmek için de bir Custom Renderer yazmamız gerekiyor.

StartFetchingMetadata içerisinde, sunucudan alınan meta verileri denetlebilir ve değiştirilebilir. Hatta burada, sayfalarda yoksa resim, video, metin eklenebilir veya açıklama metni istenilen dile çevrilebilir.

Portable katmanındaki sayfamızın tasarımı da şu şekilde:

Sonuç olarak projeyi çalıştırınca aşağıdaki ekranı görürüz.

Örnek projenin kaynak kodlarını buradan indirebilirsiniz. Faydalı linkler:

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir