0

是否可以在 SD 卡上的预定位置从用户保存的某种形式的数据库文件中读取数据(只读)?

我想允许我的地图应用程序的用户下载地图图块以供离线使用。将其存储为单个文件会更方便,因此认为数据库是最好的。该文件的大小可能约为 8+ GB,其中包含 100,000 个 PNG 平铺图像。将指示用户从网络上下载此文件并将其保存到自己的 SD 卡中。

如果可能的话,我认为 SQLite 将是可行的方法。

任何人都知道的任何限制?我一直遇到使用 Windows Phone 开发的限制(无法从应用程序保存到 SD 卡,无法将文件附加到电子邮件任务等),所以我想在这次尝试之前先问一下。

4

2 回答 2

0

是的,您可以通过定义您的应用程序可以打开的特定文件后缀,在 Windows Phone 8 上使用所谓的“文件类型关联”。您可以从手机、SD 卡甚至电子邮件附件中打开任何文件(只读!)。我想一旦您阅读了该文件,您就可以将其复制到应用程序 IsolatedStorage 以供以后安全访问。
有关更多详细信息,请参阅:http:
//msdn.microsoft.com/en-us/library/windowsphone/develop/jj206987 (v=vs.105).aspx

于 2013-11-07T22:01:09.480 回答
0

目前不可能/容易使用现有的数据库解决方案从 SD 卡中读取...

不幸的是,我遇到的任何数据库库都没有实现接受ExternalStorageDevice或流(使用提供ExternalStorageDevice.GetFileAsync())作为数据库源的接口。大多数人想要一个文件路径,然后与标准 System.IO 方法一起使用,这些方法被 Windows Phone 阻止访问 SD 卡。

我也尝试过调整各种库,但 Windows Phone 本身存在一个错误,其中返回的流ExternalStorageDevice.GetFileAsync()没有正确地从文件的第一部分查找。有关更多详细信息,请参阅此问题

于 2014-01-21T22:41:12.710 回答