2012-01-23 15 views

Odpowiedz

6

Dołączanie stanu detektora zdarzeń i sprawdzić, czy kamera jest wyciszony, patrz Dokumentacja:

Wywoływane, gdy aparat zgłasza swój stan. Przed uzyskaniem dostępu do kamery środowisko wykonawcze wyświetla okno dialogowe Prywatność, umożliwiające użytkownikom zezwolenie na dostęp lub odmowę dostępu do ich aparatu. Jeśli wartość właściwości code to "Camera.Muted", użytkownik odmówił dostępu do pliku SWF do kamery użytkownika. Jeśli wartość właściwości code to "Camera.Unmuted", użytkownik zezwolił na dostęp pliku SWF do kamery użytkownika . http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/media/Camera.html#event:status

flash.media.Microphone ma to samo.

4

Przyczyna, jeśli ustawisz "Zapamiętaj" w Panelu ustawień (kliknij prawym przyciskiem myszy), nie będzie wyskakującego okienka, a więc nie będzie powiadomienia o zmianie statusu.

Tak, aby wiedzieć, czy kamera jest dozwolony (a mikrofon w razie potrzeby), można sprawdzić muted Attribut:

var camera:Camera = Camera.getCamera(); 
if (camera.muted) 
{ 
    camera.addEventListener(StatusEvent.STATUS, handleCameraStatus, false, 0, true); 
} 
else 
{ 
    camAllowed = true; 
    handleWebcam(); 
} 

iw swojej obsługi stanu

private function handleCameraStatus(e:StatusEvent):void 
{ 
    witch (e.code) 
    { 
     case 'Camera.Muted': 
     { 
      camAllowed = false; 
      trace("Camera muted"); 
      break; 
     } 
     case 'Camera.Unmuted': 
     { 
      camAllowed = true; 
      trace("Camera unmuted"); 
      handleWebcam(); 
      break; 
     } 
    } 
} 

(ci w razie potrzeby wykonaj to samo dla mikrofonu)

następnie, po wywołaniu metody obsługi

private function handleWebcam() 
{ 
    if (camAllowed && micAllowed) 
    { 
     // Do what you need when all is OK 
    } 
    else 
    { 
     // Either wait for the 2 status to switch to true, either you got a problem !? ... 
    } 
} 
1

Występuje również problem, gdy użytkownik odmówił dostępu do kamery dla tej witryny na zawsze za pomocą globalnych ustawień odtwarzacza Flash. W takim przypadku camera.muted === true, ale nie ma żadnego okna dialogowego bezpieczeństwa, a zatem nie ma ono żadnego adresu. Istnieje kilka sposobów na wykrycie tego, tutaj: Detecting user's camera settings

Powiązane problemy