2016-04-25 48 views
0

我有Lumia 830,並且嘗試在UWP C#中創建手電筒應用程序。我的設備手電筒工作的很好,但我不知道爲什麼我不能創建我自己的應用程序打開/關閉手機的火炬。 我用燈類:如何在uwp C中創建手電筒應用程序#

var lamp = await Lamp.GetDefaultAsync(); 

if (lamp == null) 
{ 
    ShowErrorMessage("No Lamp device found"); 
    return; 
} 
lamp.IsEnabled = true; 

當我的手機「燈」運行這段代碼爲null並且無法找到我的FlashLED。我從MSDN.Microsoft.com得到這個代碼和禪師說

如果返回的對象爲null,燈泡API是 設備上不支持。即使設備上實際存在一個 指示燈,某些設備也可能不支持Lamp API。

這個課程不適用於我的Lumia 830我不知道爲什麼? :(

也是我使用此代碼:

var mediaDev = new MediaCapture(); 
await mediaDev.InitializeAsync(); 
var videoDev = mediaDev.VideoDeviceController; 

var tc = videoDev.TorchControl; 
if (tc.Supported) 
{ 
// But wait, for this to work with Blue camera drivers, we have to Start a recording session 
// Create video encoding profile as MP4 
var videoEncodingProperties = MediaEncodingProfile.CreateMp4(VideoEncodingQuality.Vga); 

// Start Video Recording 
var videoStorageFile = await KnownFolders.VideosLibrary.CreateFileAsync("tempVideo.mp4", CreationCollisionOption.GenerateUniqueName); 
       await mediaDev.StartRecordToStorageFileAsync(videoEncodingProperties, videoStorageFile); 

// Turn on Torch     
mediaDev.VideoDeviceController.TorchControl.Enabled = true; 
} 

此代碼的工作和我的FlashLED打開,但它錄製視頻,並把它的用戶SD卡內存 請幫助我,如果你知道有最好的方法。 由於打開/關閉手電筒或FlashLED。提前 侯賽因·哈比比Juybari

+0

請,任何一個不知道? –

回答

1

Lamp API僅適用於Windows 10設備,您只能在支持該API的設備上使用它。目前支持的設備是950/950XL,650和550.舊設備不會更新以支持此API。當您檢測到燈設備在舊設備上不可用時,應該回到開啓閃光燈的Windows 8.1方法。

來源:https://wpdev.uservoice.com/forums/110705/suggestions/15846967

0

請測試默認採樣名爲LampDevice(參見https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/LampDevice)。你有同樣的行爲?我剛上的Lumia 930進行了測試工作正常。沒有Lumia 830來測試它

+0

嗨親愛的Dupuy,感謝您的回答,我下載並在我的Lumia 830上運行,它不起作用,並給我這個錯誤「沒有燈設備被發現」。我的手機FlashLED與其他程序一起使用 –