2011-02-22 64 views
0

到目前爲止,我發現的所有內容提供者教程都教導瞭如何在Android設備上本地實現內容提供者。該URI對這些內容提供商總是使用內容://爲:Android內容提供者*不是*在Android中?

content://com.google.provider.NotePad/notes/23 

我的問題:是有可能實現的內容提供商是在Android設備上不

也就是說,內容提供者遵循Android內容提供者的所有約定和方便性,而是位於遠程網站上,而不是使用SQLite3,而是使用MySQL。

如果是這樣,我該如何去實現這樣的內容提供商?我在哪裏可以找到教導如何做到的信息?這樣的內容提供商的URI是否以'content://'開頭?

回答

2

我不認爲有可能創建一個不在Android設備上的內容提供者。內容提供者是Android框架的一部分,其解析(即名稱映射到的內容)也是框架的一部分。意識到Android用於服務名稱的URI與公共互聯網上的URL不同。

如果要通過公共互聯網連接到某些服務器端數據,最好將其包裝在某個Web服務中,該服務將返回JSON或XML以避免數據庫連接問題。

+0

我不喜歡這樣的事實,即無法創建不在Android設備上的內容提供者。但我想我必須接受這一點(除非有相反的答案出現)。感謝和+1。 :) – 2011-02-23 22:42:59

2

這確實是可能的,我不認爲你會發現一個比RESTProvider更好的例子。

這暴露了一個contentprovider接口到REST API服務,並且可以與任何返回XML或JSON的遠程服務一起使用。

相關問題