私のphpプロジェクトでは、jpegcam を使用 しました。キャプチャ ボタンが有効になっています。ロード時にキャプチャ ボタンを無効にして、ユーザーが権限を許可した場合にのみ有効にしたいです。
では、ユーザーがサイトへのプライバシー設定ダイアログ ボックスで Web カメラ アクセスを許可または拒否したことを確認するにはどうすればよいでしょうか。! 皆さん、どんな助けもいただければ幸いです.. :)
ActionScript のCamera.muted
プロパティが必要です。リンク先のソースは、という名前のプライベートCamera
オブジェクトを作成しますcamera
。公開するか、新しいメソッドを追加してそのmuted
プロパティを確認できます。
final public function has_access( ) : Boolean {
return !camera.muted;
}
通常、muted が false になるまでボタンを非表示/無効にします(再び true になる可能性はほとんどありません。ユーザーは設定ボックスを手動で開いてアクセスを無効にする必要があります)。
リスナーを使用して、この値を常にチェックしないようにすることもできます。
final public function add_access_listener( myFunc : Function ) : void {
camera.addEventListener( "status", myFunc ); // StatusEvent.STATUS
}
これは次のように使用されます。
myWebcam.add_access_listener( myAccessFunc );
function myAccessFunc( ev : StatusEvent ) : void {
if( ev.code == "Camera.Unmuted" ) {
// video became available, enable button
} else {
// video became unavailable, disable button
}
}
// remember that the user could have granted persistent permission
// (i.e. the status will be unmuted without actually changing)
if( myWebcam.has_access( ) ) {
// video is already available, enable button
} else {
// video is not yet available, disable button
}
メモリリークの可能性を回避するために、カメラを削除した場合にも呼び出す必要がありますremoveEventListener
が、ライブラリはとにかくそれを行うように設計されていないようです (独自のリスナーを削除しません)。