我想用我的应用程序使用黑莓相机拍照,有可能在v5.0中,是的,那么如何?
答案 0 :(得分:4)
是的,这绝对是可能的,但如果你事先没有得到一些建议,这不是一个非常简单的任务。
首先,Eclipse包中附带了一些示例代码(CameraDemo),它显示了如何使用Field,Player和VideoScreen创建viewfiender。最大的问题是第三方开发人员无法在取景器之上叠加任何内容(在使用VideoControl进行设置之后,这就是他们称之为Field的内容。
此外,你只能限制你可以设置字段的大小 - 我只有一半的尺寸和全屏工作,一些尺寸被忽略而其他尺寸导致它根本不显示。
以下是一些显示此内容的代码:
private Field _videoField;
private Player _player;
private VideoControl _videoControl;
private void initCamera() {
try{
_player = Manager.createPlayer( "capture://video??encoding=jpeg&width=640&height=480" );
_player.realize();
_player.prefetch();
_videoControl = (VideoControl)_player.getControl("VideoControl");
_player.start();
if (_videoControl != null){
_videoField = (Field) _videoControl.initDisplayMode (VideoControl.USE_GUI_PRIMITIVE, "net.rim.device.api.ui.Field");
_videoControl.setDisplayFullScreen(true);
add(_videoField);
}
}
catch(Exception e)
{
//show error
}
}
执行此操作后,您可以使用
byte[] image = _videoControl.getSnapshot(sizeAndEncodingParamters);
拍下照片。要确定您的设备支持的sizeAndEncodingParameters,您可以使用System.getProperty("video.snapshot.encodings");
返回String[]
,您可以迭代以确定要使用的内容。
答案 1 :(得分:0)
在PC上查看BB SDK安装附带的示例。有CameraDemo样本。如果您不确定这些样本的位置,您可以尝试在硬盘上搜索CameraDemo.java。