使用非本地映像在Windows Phone 8中设置锁定屏幕

时间:2012-11-13 04:07:53

标签: windows-phone lockscreen windows-phone-8

我正在尝试使用SetImageUri在Windows Phone 8上设置锁定屏幕,但我无法使用非本地图像。在我的例子中,我有一个单独的程序集和远程服务器(Azure CDN)上的图像。

我已经添加了清单条目,并获得了示例代码中提供者的用户权限。

这就是代码看起来像imageUri会是这样的:

https://infinitecodex.blob.core.windows.net/nflfanapps/26-WALL-1.png

图像退出并且是有效文件。我尝试将它放在一个单独的图像集中,但仍然会出现此错误。

                // At this stage, the app is the active lock screen background provider.
                var uri = new Uri(imageUri, UriKind.Absolute);

                // Set the lock screen background image.
                Windows.Phone.System.UserProfile.LockScreen.SetImageUri(uri);

我尝试的所有内容都会导致异常:

    Value does not fall within the expected range.

3 个答案:

答案 0 :(得分:5)

根据本指南,您只能使用存储在隔离存储中的图像或随应用程序打包的图像:
Lock screen background for Windows Phone 8
没有什么能阻止您将图像下载到隔离存储并使用Uri将此图像作为锁屏源。

  

//在此阶段,应用程序是活动的锁定屏幕背景   provider.//以下代码示例显示了新的URI架构.//   ms-appdata指向本地应用程序数据文件夹的根目录.// ms-appx   指向本地应用程序安装文件夹,以引用捆绑的资源   在XAP package.var schema = isAppResource? “ms-appx:///”:   “MS-应用程序数据:///本地/”;

答案 1 :(得分:1)

我猜只有隔离的存储图像可以用作锁定图像

答案 2 :(得分:0)

另请参阅SetImageUri上的MSDN doc; http://msdn.microsoft.com/en-us/library/windowsphone/develop/windows.phone.system.userprofile.lockscreen.setimageuri(v=vs.105).aspx 隔离存储或图像安装路径中图像的绝对路径统一资源标识符(URI)。”