Vấn đề ở đây làm sao lấy được đường dẫn "trực tiếp" đến file của bạn mà không phải qua các app trung gian của Google (như Google Doc). Và thủ thuật sau sẽ giải quyết vấn đề này.
1. Thủ thuật:
Lưu ý thủ thuật này chỉ có thể được sử dụng cho các file có dung lượng dưới 25MB
- Đầu tiên file của bạn phải bật chế độ chia sẽ (khuyên dùng chế độ Anyone with the link)
- Liên kết chia sẽ có dạng như sau: https://drive.google.com/file/d/[ID]/edit?usp=sharing
Ví dụ: "https://drive.google.com/file/d/0B6V5Yw2AH84tUTEyQXdmN2tzUjg/edit?usp=sharing"
Có ID là: 0B6V5Yw2AH84tUTEyQXdmN2tzUjg - Ta chuyển từ sharing link - > dericted link bằng cách dùng cấu trúc liên kết sau:
https://docs.google.com/uc?export=view&id=[ID]
Như vậy là gần như ta đã có tất cả. Tiếp theo là sử dụng thủ thuật trên để biến Google Drive thành nơi lưu trử Database cho ứng dụng của bạn.2. Demo (Ứng dụng mổ tả thông tin các thiết bị Windows Phone)
- Database của bạn phải là loại Database có thể lưu thành file. Ví dụ như Json hoặc Xml
- Đầu tiên đến Google Drive tạo một thư mục và để nó ở chế độ "Shared", sau đó upload tất cả cái file cần thiết và các file data vào.
- Database: JsonData.txt XmlData.txt (bạn có thể lưu phần mở rộng bất kỳ)
- Đừng quên lấy ID của các file Data đưa vào ứng dụng để làm "ConnectionString" :)
- Để dễ dạng trong việc chuyển đổi từ Data -> .Net Object bạn có thể sử dụng các thư viện chuyển đối như Json.Net và System.Xml.Serialization
- Như vậy liệu được lưu trữ ở trên tương đương với một danh sách các đối tượng Model có các thuộc tính như sau:
- Đối với các thuộc tính chỉ có trong Object nhưng ko được lưu trử, hoặc các thuộc tính đặc biệt (như Command) không thể lưu trử bạn phải đặt Attribute JsonIgnore hoặc XmlIgnore bên trên thuộc tính đó, như thế này:
[JsonIgnore, XmlIgnore]
public string ImageSource { get { return BASE + Image; } }
- Vậy kết hợp với thủ thuật trên và sử dụng các thư viện Web Request (như HttpClient) , ta có thểGet Data và nạp vào Object (Model, ViewModel) cho ứng dụng của mình. Demo
- Để cập nhật Database thì bạn chỉ cận upload một Revision mới cho file data tương ứng:
- Mình đã tổng hợp và tạo các method chuyển đổi qua lại giữa Data String và .Net Object của cả Json lẫn Xml, bạn có thể tìm thấy ở đây: http://www.sourcepod.com/wuengz79-21552. (Yêu cầu thư viện Json.Net)
0 nhận xét:
Đăng nhận xét