更新:ICS模拟器支持相机。
为了进一步阐述已经说过的内容:
如上所述,当前SDK原生支持Webcam,但仅限于较新的Android版本(4.0及以上)
在有摄像头的情况下,网络摄像头检测是自动进行的。在4.0.3中,默认使用前置摄像头,因此许多应用程序(特别是2.3之前的应用程序,只能获取默认相机,即后置相机)仍然会显示旧的方格图标。
我认为以下帖子提供了更详细的信息:Camera on Android Eclipse emulator:
至少,在SDK工具的发布说明中除了简短而不详细的陈述外,这是我能找到的最多的信息。
如果你正在使用命令行工具或者想要直接编辑你的config.ini
文件,你有以下几个选项:
emulator -help | grep cam # => shows items such as -camera-back
emulator -help-camera-back # => show supported values for this option
emulator -avd $MY_AVD -camera-back virtualscene # Example invocation
webcam${N}
。你怎么知道${N}
应该是什么?emulator -webcam-list
会列出并描述计算机上可用的摄像头。~/.android/avd/${MY_AVD}/config.ini
并添加一行(我会使用virtualscene
作为我的选择值):hw.camera.back = virtualscene
最新的camera2 apis可以在启用了相机支持的模拟器上正常工作。
以下是使用更新API的示例:
看起来不像,但Android将网络摄像头识别为设备。每次我运行模拟器时,我的网络摄像头的活动指示灯都会亮起来。
如果你只需要在响应相机请求时显示一张图片,可以使用image-to-camera。
只需下载、构建、安装,并将所选的图像复制到设备上,就可以通过该应用程序选择它,这是内置相机的替代品。
这里有Tom Gibara教程的更新版本。你可以将Webcam Broadcaster更改为与旧版JMF不同,使用JMyron进行工作。
新的模拟器(sdk r15)可以管理网络摄像头;但它在集成式网络摄像头方面存在一些问题(至少对于我的^^)。