尝试在Blackberry Cascades 10 Beta 3 SDK(C ++,QT,QML)中打开相机

时间:2012-11-23 16:24:44

标签: qt camera qml blackberry-simulator blackberry-cascades

我正在尝试使用Blackberry Cascades 10 Beta 3 SDK(C ++,QT,QML)打开相机,然后在打开后对其进行响应。我正在使用Dev Alpha模拟器,并且在我尝试打开它后,我不断收到错误“上下文:找不到具有id ###的目标节点”(连续几次,其中###是某个数字)。可能这是因为我没有实际的相机供模拟器使用(我试图看看我是否可以为相机编写部分功能 - 然后当我实际上有一个相机供Blackberry使用时实现全部功能) ,或者我必须在QML文档中加入什么内容?

以下是导致此问题的代码:

(在构造函数中):

cameraContainer_ = root->findChild<Container*>("cameraContainer);

(在打开相机的代码中):

bb::cascades::multimedia::Camera camera(cameraContainer_);
connect(&camera, SIGNAL(cameraOpened()), this, SLOT(onCameraOpened());
camera.open()
qDebug() << "opening camera..."

(在相机打开后的插槽中):

void MyCamera::onCameraOpened(){
    qDebug() << "camera has opened";
    disconnect(&camera, SIGNAL(cameraOpened()), this, SLOT(onCameraOpened());
}

(槽在类声明中定义&amp; class派生自QObject&amp; QObject宏使用):

#ifndef MY_CAMERA_H
#define MY_CAMERA_H

#include <QObject>

class MyCamera : public QObject {
Q_OBJECT

//... inbetween lines of code

private slots:
    void onCameraOpened();
//...
}

#endif

我进入控制台的所有内容都是:

打开相机...... 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点失败 上下文:找不到ID为644的目标节点

(有时数字不同于644,但通常非常接近该数字。)

我还在

下的bar-descriptor.xml中添加了这些行
<permission system="true">run_native</permission>

他们是:

<permission>use_camera</permission>
<permission>access_shared</permission>
<permission>record_audio</permission>

如果有人知道如何解决这个问题,我们将不胜感激。

1 个答案:

答案 0 :(得分:0)

模拟器不支持相机,我希望这可能是你的问题。如果您想要更加确定,请尝试从GitHub加载一个现有的相机样本,例如https://github.com/blackberry/Cascades-Samples/tree/master/photobomber,看看您是否遇到了类似的问题。