2012-09-20 40 views
6

Tôi đang xây dựng ứng dụng phổ dụng.Trong ứng dụng của tôi, tôi đang sử dụng sq-lite database.I muốn đồng bộ hóa dữ liệu cục bộ của mình với iCloud để bất kỳ người dùng nào khác cài đặt ứng dụng trong iPhone có thể đồng bộ hóa dữ liệu cho điện thoại/Ipad của anh ấy.Đồng bộ iCloud với ứng dụng bằng cách sử dụng cơ sở dữ liệu sqlite - IOS

Tôi đã tìm kiếm liên quan đến điều này ở nhiều nơi tôi đã tìm thấy iCloud đồng bộ hóa với dữ liệu mã nhưng tôi đang sử dụng sq-lite.

Có cách nào để thực hiện tác vụ này không.

Cảm ơn trước.

+1

Bất kỳ ai có thể giúp tôi với điều này. Tôi đang gặp sự cố khi triển khai nó. Toàn bộ dự án của tôi đang sử dụng sq-lite và cuối cùng tôi không thể chuyển cơ sở dữ liệu sang coredata. –

+0

bạn phải tự tạo một lược đồ/giao thức đồng bộ hóa. icloud cư xử như một cái xô ở đây và khá là. câm. CoreDataa DOES đi kèm với giao thức đồng bộ sẵn sàng, nhưng ở cấp độ thấp hơn nó không có –

+0

Cố gắng đồng bộ hóa cơ sở dữ liệu SQLite qua iCloud mà không có thứ gì đó giống như Dữ liệu cốt lõi sẽ đầy khó khăn. Hãy suy nghĩ về cách hoạt động của SQLite - bạn cập nhật các bản ghi riêng lẻ - và cách iCloud hoạt động - ở cấp độ tệp - và bạn thấy rằng việc kết hôn với chúng là khó khăn. Core Data thực hiện điều này thông qua các tệp giao dịch mà sau này được hợp nhất. Tái tạo lại rằng bản thân bạn sẽ ... thách thức. – Hunter

Trả lời

2

Đặt cược tốt nhất của bạn là triển khai Core Data để có thể đồng bộ hóa với iCloud. Từ nghiên cứu của tôi, không có cách nào thuận tiện để đồng bộ hóa cơ sở dữ liệu SQLite với iCloud mà không sử dụng Dữ liệu cốt lõi. Những lợi thế thu được bằng cách sử dụng nó vượt quá khả năng truy cập dữ liệu. Việc triển khai Dữ liệu cốt lõi có thể giúp bạn làm việc với dữ liệu của mình hiệu quả hơn bởi vì nó cung cấp một khuôn khổ hoàn thiện cho ánh xạ đối tượng-quan hệ. Nó có những hạn chế như cách thay đổi lược đồ làm cho các kho lưu trữ hiện tại không thể truy cập được. Tuy nhiên, nó cũng vượt trội trong các lĩnh vực như hỗ trợ cho sự kiên trì đối tượng. Nhìn chung, nó chỉ có thể giúp bạn để có thể sử dụng nó đặc biệt là liên quan đến đồng bộ hóa với iCloud.

Có nhiều cách khác nhau để bắt đầu chuyển đổi cơ sở dữ liệu của bạn thành Dữ liệu cốt lõi. Một cách tiếp cận là tự sửa đổi cơ sở dữ liệu SQLite được tạo ra bởi Core Data khi bạn có một mô hình. Bạn có thể xác định những gì cần thay đổi bằng cách xem cơ sở dữ liệu được tạo trong/AppData/Documents có sẵn thông qua Trình tổ chức trong Xcode. Từ đó nó có thể là một vấn đề đơn giản của việc sao chép dữ liệu SQLite của bạn vào cơ sở dữ liệu mới. Mặc dù phương pháp này không được Apple khuyến cáo vì chúng có thể thay đổi lược đồ Dữ liệu cốt lõi, nó có thể cung cấp phương tiện dễ dàng di chuyển các tập dữ liệu hiện có. Một cách khác là viết mã để dịch giữa các kho dữ liệu trong ứng dụng của bạn. Bạn thậm chí có thể đồng thời duy trì cả hai triển khai, SQLite và Core Data, nếu bạn muốn.

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