2016-02-24 33 views
11

Obecnie próbuję szybko utworzyć aplikację do czatu, korzystając z Firebase do przesyłania wiadomości w czasie rzeczywistym. Moim jedynym problemem jest to, że chcę, aby użytkownicy wysyłali obrazy, chcę, aby mieli profile z obrazami, ale wiem, że Firebase ma ograniczone miejsce na dysku (przynajmniej pamięć na poziomie płatnym jest niska dla liczby połączeń). Chciałbym wiedzieć, jak połączyć kolejną bazę danych i nawiązywać połączenia w razie potrzeby między tymi dwoma. Tak więc, kiedy wiadomość jest wysyłana i obraz, a nie przechowywana przez Firebase obraz, zapisuje adres URL obrazu w innej bazie danych.Firebase & Swift: Jak korzystać z innej bazy danych do przechowywania większych plików?

Mam wrażenie, że coś takiego jak AWS S3 to mój najlepszy zakład. każda pomoc jest doceniana!

Odpowiedz

9

To pytanie zostało zadane wcześniej i istnieje wiele rozwiązań. Jest to rodzaj pytania typu "opinia", ale oto kilka opcji.

View and store images in Firebase

Firebase ma pojemność 10 MB, co jest wystarczające dla wielu obrazów. Jednakże, jeśli potrzebujesz większych, mogą być łatwo zakodowane jako base64 i podzielone na porcje.

Jeśli chcesz iść zewnętrzny:

s3 lub Filepicker (Filestack), jak również Google zapewnić pewne opcje.

Nie jestem pewien ogólnych wymagań, ale oczywiście możesz zagłębić się w CloudKit/CoreData, a nawet Dropbox oferuje API.

Mam zerowe doświadczenie z Box, ale może to być również opcja.

Każda opcja ma swój własny interfejs API.

Ogólnie rzecz biorąc, można zapisać łącze w węźle bazy ogniowej do obrazu/obiektu, o którym mowa. Jednak mechanizmy tego różnią się szalenie, ponieważ łączą się z CloudKit/CoreData będą inne niż powiedz Filepicker.

Z CoreData będziesz musiał przetasować swój własny schemat referencyjny, podczas gdy Filepicker możesz mieć prawie bezpośrednie odniesienie do pliku.

Wiele z tych usług oferuje bezpłatne lub tanie tryouts, a niektóre programy można przetworzyć w ciągu kilku minut, aby przetestować funkcjonalność, aby sprawdzić, czy spełnia ona wymagania.

Jeśli potrzebujesz pomocy kodowania/dekodowania, patrz odpowiedź na to pytanie

Swift2 retrieving images from Firebase

Kiedy się walcówka, jeśli masz problemy pisać kodu w innym pytaniu.