【Android】Unknown camera factory query name in "***"
経緯
AndroidStudioでエミュレータを起動してみたらUnknown camera factory query name in "***"
というエラーが発生してエミュレータが動きませんでした。そのときにしたエラーの解決方法かもしれないことを書こうと思います。
環境
IDE : AndroidStudio 1.02
OS : WindowsOS7
Android Virtual Device : Nexus 5 API 19
Android Virtual Device(以下AVDと表記)のCameraはFront,Backと両方共Noneという設定にしていました。snapshotの設定もオフにしています。
原因
Unknown camera … と表示されたので、エミュレータ上でカメラを使用できないのが原因かもしれません。
解決策
AVDManagerの起動したいAVDを編集します。そして、AVDのCameraの設定をEmulatedにして、エミュレータ内でもカメラを使えるようにしたら動くようになりました。
エミュレータのカメラのクライアントから受信したメッセージを処理する_factory_client_recv
関数内で、適切なハンドラにクエリを渡す処理があります。適切なハンドラにクエリを渡せなかった場合にこのエラーメッセージが表示されているようにみえるので、エミュレータ内でカメラを使えるようにすることが解決方法の一つとして有効かもしれません。
参考サイト
stackoverflow - Android Emulator error in running simple project
Github - Android - platform_external_qemu/android/camera/camera-service.c