我正在为Windows Phone 8在Silverlight中开发一个Flash Light应用程序.目前我在一个问题上深深陷入使用"Microsoft.Phone.Media.Extended"程序集.适用于Windows Phone 7的Flash Light应用程序已经在Windows Phone Marketplace中运行,它对Windows Phone 7工作得非常好,但由于"Microsoft.Phone.Media.Extended"dll,它不能用于Windows Phone 8.
将WP7应用程序转换为wp8并运行后,我收到了此类错误消息:
无法加载文件或程序集"Microsoft.Phone.Media.Extended,Version = 7.0.0.0,Culture = neutral,PublicKeyToken = 24eec0d8c86cda1e"或其依赖项之一.系统无法找到特定文件."
根据Windows Phone特定功能的以下链接:http: //msdn.microsoft.com/en-us/library/windowsphone/develop/jj206947(v=vs.105).aspx
如果您使用反射来访问此程序集中的API,因为它们未公开,您的应用程序可能会在Windows Phone 8设备上失败.删除对此程序集的调用并使用公开的媒体API.
我不了解如何使用公开的媒体API.我在Windows Phone 7中使用了Microsoft.Phone.Media.Extended使用reflaction.是否有任何直接的方法来访问Windows Phone 8中的Microsoft.Phone.Media.Extended或其他解决方法?
谢谢.
================================================== ========================编辑问题:
嗨,
根据线程,我们使用"VideoTorchMode"枚举来打开手电筒.据此,我使用Windows.Phone.Media.Capture命名空间使用AudioVideoCaptureDevice类,代码如下:
var objDevice = await AudioVideoCaptureDevice.OpenAsync(CameraSensorLocation.Back, AudioVideoCaptureDevice.GetAvailableCaptureResolution(CameraSensorLocation.Back).First());
objDevice .SetProperty(KnownCameraAudioVideoProperties.VideoTorchMode, VideoTorchMode.On);
Run Code Online (Sandbox Code Playgroud)
我想保持闪光灯亮,但不捕捉视频.所以,我还没有初始化视频捕获代码.问题是,我还没有WP8,在模拟器中我无法测试这个.
任何人都可以确认,一旦我把这个代码,我的应用程序将作为Flashlight-X工作,其中灯将打开而不会闪烁,它也不会在WP8中崩溃.
谢谢