当文件存储在AppData文件夹或App中的安装文件夹中时,我可以使用Arcgis SDK在Windows应用商店应用中成功加载.tkp包。
像这样:
StorageFile sf = await ApplicationData.Current.LocalFolder.GetFileAsync("Test.tpk");
Layer bkgLayer = new ArcGISLocalTiledLayer(sf);
Map.Layers.Add(bkgLayer);
注意:ApplicationData.Current.LocalFolder是标准的本地文件夹: C:\ Users \用户名\应用程序数据\本地\软件包\ app_guid \ LocalState
=>基本地图已成功显示。
但是,我必须将数据存储到SD卡或其他文件夹,如我的文档
所以我用:
StorageFile sf= await Windows.Storage.StorageFile.GetFileFromPathAsync(@"C:\Users\<user>\Documents\Test.tpk");
Layer bkgLayer = new ArcGISLocalTiledLayer(sf);
Map.Layers.Add(bkgLayer);
=&GT;未显示基本地图
在应用程序清单中,我可以访问documents文件夹和.tpk文件。我可以使用Stream成功地在此文件夹中读取和写入。
我注意到在SDK文档中我们可以阅读:
ArcGISLocalTiledLayer(StorageItem):存储文件必须位于应用程序可访问的位置,即只有本地数据和应用程序 存储。如果文件位于这些文件夹之外,则必须将其复制 首先到本地数据存储。
那么,它是否是Argis SDK的限制或者我做错了什么?
是否有另一种方法可以将基本地图存储在AppData文件夹之外?
(基本地图的大小是40Go,我必须在多个用户帐户之间共享)
非常感谢您的帮助:)