Merhaba. Bugünkü yazımda Flutter ile geliştirdiğimiz uygulamamızdan Firebase Storage’a dosya yüklemeyi anlatacağım.
Uygulamamızı Firebase ile bağladığımızı varsayıyorum. Eğer nasıl bağlanacağını bilmiyorsanız buradaki yazımdan okuyabilirsiniz. Ayrıca Youtube üzerinden de bu işlemleri detaylı olarak anlattığım videomu izleyebilirsiniz.
Ekranımızda galeriden seçtiğimiz fotoğrafımızın olduğunu düşünelim. Bunu Firebase Storage’a yüklemek istiyoruz. Aslında yapmamız gereken işlem gayet basit.
Buradan Firebase ile uygulamamızın haberleşmesi için gereken ana paketimizi, buradan da storage işlemlerini gerçekleştirmemiz için gereken paketi projemize ekliyoruz.
Uygulamamızda Firebase kullanacaksan eğer herşeyden önce Firebase’i initialize etmemiz gerekmekte.
WidgetsFlutterBinding.ensureInitialized uygulamanın başlangıç aşamasında gerekli olan işlemleri gerçekleştirmesini sağlar ve uygulamamızın stabil bir şekilde çalışmasını sağlar. Asenkron işlemlere başladığımız zaman bunu ilk satıra eklememiz gerekmektedir. Daha sonrasında ise Firebase’i initialize ediyoruz.
Artık uygulamamız içerisinde Firebase’i kullanabiliriz. Galeriden seçtiğimiz bir görseli storage’a upload edeceğiz.
Ekranda galeriden seçtiğimiz görselin path değerini imagePath değerine atadık. Buradaki işlemlerin nasıl yapıldığını bilmiyorsanız veya hatırlamıyorsanız burada yayınlamış olduğum ‘Adım Adım Flutter’da Galeriden Fotoğraf Seçme Nasıl Yapılır?’ yazıma ulaşabilirsiniz.
FirebaseStorage.instance.ref() dediğimiz kısımı şu şekilde açıklayabiliriz. Firebase Storage üzerinde dosyalarımızı kaydedeceğimiz bir uzantı, bir yol bulunacak. Bu yolu ref() içerisinde belirtiyoruz. Ben TestC klasörüne yüklemek istediğim için ref(‘TestC’) yazdım.
ref()’ten sonra gelen .child() ise yükleyeceğimiz dosyanın storage üzerindeki adının ne olacağını soruyor. Biz zaten seçtiğimiz fotoğrafın bir adının olduğunu biliyoruz. bu da imagePath değişkeninde xx/xx/xx/xx/photo.jpg şeklinde bulunuyor. Benim istediğim photo.jpg olduğu için bu değişkeni ‘/’ işaretlerinden split ediyorum ve photo.jpg kısmını alıyorum.
Koyacağım ismi de child içerisine koyduktan sonra ne koyacağımı seçiyorum. Ben bir file koyacağım için putFile() yazıyorum. putFile bizden bir File istiyor. Ekranda göstermiş olduğumuz, galeriden seçtiğimiz görselin bir File olduğunu zaten biliyoruz. Bunu yerleştiriyoruz ve kodumuzu tamamlıyoruz.
Flutter ile Firebase Storage işlemlerini sizlere anlatmaya çalıştım. Uygulamanın kaynak kodlarına buradan ulaşabilirsiniz.
Oluşturduğum içerikleri genel olarak Youtube’da da paylaşmayı düşünüyorum. Buradan abone olup içeriklerimi takip edebilirsiniz.
Herkese iyi çalışmalar diliyorum.
3 yorum
Kadir · Temmuz 14, 2023 7:47 am tarihinde
Hocam image path’i nasıl atıyoruz
Çağatay Öney · Temmuz 17, 2023 8:18 pm tarihinde
https://cagatayoney.com/?p=146 Buradaki yazıyı okuyarak image path’i nasıl aldığımızı rahatça anlayabilirsiniz.
Kadir · Temmuz 20, 2023 7:12 am tarihinde
Saolun hocam