Capacitor.js ile JavaScript ve Native Cihaz API'leri Arasında Köprü Kurma
Web teknolojileri ile mobil uygulama geliştirirken en büyük zorluk, cihazın yerel özelliklerine (kamera, bildirimler, GPS vb.) erişmektir. Capacitor.js, Ionic ekibi tarafından geliştirilen ve web kodunuz ile iOS/Android işletim sistemleri arasında modern köprüler kuran açık kaynaklı bir araçtır.
Neden Cordova Değil de Capacitor?
Cordova, projeyi sarmak için soyutlanmış bir yapı kullanırdı ve hata ayıklama (debugging) süreçleri son derece zordu. Capacitor ise mobil projeleri (Xcode ve Android Studio projeleri) doğrudan geliştiricinin yönetimine sunar. Web çıktınızı bu yerel projelere kopyalar ve yerel kod yazarak özel eklentiler (custom plugins) geliştirmenizi kolaylaştırır.
Nasıl Çalışır?
Capacitor, JavaScript katmanında bir Capacitor.toNative() çağrısı yapıldığında bunu arka plandaki Swift/Kotlin sınıflarına aktarır. İşlem tamamlandığında ise Promise yapısı üzerinden sonucu web arayüzünüze geri döndürür. Polyvo mobil sürümünde anlık bildirimler (push notifications) ve yerel ses çalma özelliklerini bu şekilde kurguladık.