2015-09-25 15 views
6

Khi sử dụng Firebase trong ứng dụng iOS, tôi muốn cung cấp cho người dùng tùy chọn đồng bộ hóa dữ liệu của họ vào đám mây Firebase hoặc giữ mọi thứ cục bộ. Tôi đã thấy rằng Firebase đã giới thiệu tùy chọn trong SDK của họ để ngoại tuyến và giữ cho dữ liệu không đồng bộ hóa trực tuyến nhưng tôi không chắc chắn về mục đích của tính năng này.SDK Firebase, lưu trữ dữ liệu ngoại tuyến có tùy chọn đồng bộ hóa sau

//Keep data local. 
[Firebase defaultConfig].persistenceEnabled = YES; 
self.firebase = [[Firebase alloc] initWithUrl:kFirechatNS]; 
[Firebase goOffline]; 

Từ các tài liệu có vẻ như rằng goOffline(), và chế độ offline nói chung, là xây dựng để xử lý các giai đoạn tạm thời, nơi thiết bị được ẩn, và dữ liệu đồng bộ hóa lại vào các đám mây ngay sau khi thiết bị trở nên trực tuyến một lần nữa. Chế độ ngoại tuyến Firebase có khả năng xử lý trường hợp "vĩnh viễn ngoại tuyến" không? Hoặc sẽ buộc Firebase phải chuyển sang "vĩnh viễn ngoại tuyến" firebase dẫn đến chỉ tích lũy ngày càng nhiều "siêu dữ liệu" cho đồng bộ hóa không bao giờ xảy ra trong tương lai với đám mây? Hoặc loại bỏ dữ liệu cũ tại một số điểm? Hoặc chạy ra khỏi không gian đĩa bộ nhớ cache ngoại tuyến khi đạt đến kích thước bộ nhớ cache tối đa?

+0

Bài đăng chéo từ https://groups.google.com/forum/#!topic/firebase-talk/wcSlYiEYAe0 (mặc dù bài đăng đó nói về Android) –

+0

Bài đăng đó không có câu trả lời và câu hỏi áp dụng cho iOS như Android. – Oysio

Trả lời

5

tôi có câu trả lời từ hỗ trợ căn cứ hỏa lực:

Trong khi bạn có thể sử dụng goOffline() để buộc các ẩn client trong một thời gian dài, hiệu suất sẽ xấu đi theo thời gian. Khách hàng Firebase sẽ xếp hàng thay đổi trạng thái trung gian, thay vì cập nhật trạng thái được lưu trữ như máy chủ.

Các vấn đề liên quan