首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WindowsPhone 8.1 FlashLight

WindowsPhone 8.1 FlashLight
EN

Stack Overflow用户
提问于 2016-01-24 00:01:28
回答 2查看 78关注 0票数 0

我有诺基亚730,我想让FlashLight在上面工作。但是下一次代码崩溃:

代码语言:javascript
复制
     MediaCapture mc = new MediaCapture();
        await mc.InitializeAsync();

            if (mc.VideoDeviceController.TorchControl.Supported == true)
            {
                mc.VideoDeviceController.TorchControl.Enabled = true;
                mc.VideoDeviceController.TorchControl.PowerPercent = 100; // here is crash
            }

有什么想法吗?由于某些原因,使用较旧平台(wp7、wp8)的解决方案根本不起作用。

EN

回答 2

Stack Overflow用户

发布于 2016-01-24 01:35:10

通过下一段代码修复:

代码语言:javascript
复制
        private async void Button_Click(object sender, RoutedEventArgs e)
    {
        // Initialize Media Capture and Settings Objects, mediaCapture declared global outside this method 
        var mediaCapture = new MediaCapture();

        // Grab all available VideoCapture Devices and find rear device (usually has flash)
        await mediaCapture.InitializeAsync();

        var videoEncodingProperties = MediaEncodingProfile.CreateMp4(VideoEncodingQuality.Vga);

        var videoStorageFile = await KnownFolders.VideosLibrary.CreateFileAsync("tempVideo.mp4", CreationCollisionOption.GenerateUniqueName);
        await mediaCapture.StartRecordToStorageFileAsync(videoEncodingProperties, videoStorageFile);

        await Task.Delay(TimeSpan.FromMilliseconds(500));
        mediaCapture.VideoDeviceController.TorchControl.Enabled = true;
    }

但是由于某些原因,我应该在启用TorchControl之前等待500毫秒。有人能解释一下原因吗?

票数 1
EN

Stack Overflow用户

发布于 2016-01-24 00:17:19

根据this post的说法,尝试以下方法可能会有所帮助:

代码语言:javascript
复制
//to switch OFF flash light
mc.VideoDeviceController.FlashControl.Enabled = false;
//to switch ON flash light
mc.VideoDeviceController.FlashControl.Enabled = true;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34965602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档