首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Meego 1.2 Harmattan和QCamera应用程序

Meego 1.2 Harmattan和QCamera应用程序
EN

Stack Overflow用户
提问于 2011-09-02 16:35:41
回答 1查看 707关注 0票数 2

有没有办法在诺基亚N9 (Mego1.2 Harmattan)的QCamera类中使用相机,或者我应该使用另一个?

这是我的问题:在诺基亚C6-01 (Symbian Anna)上运行良好的简单应用程序在N9上做不到任何有用的事情。

以下是代码片段:

testmobile.pro

代码语言:javascript
复制
<...>
CONFIG += mobility
MOBILITY += multimedia
LIBS += -lQtMultimediaKit
<...>

mainwindow.h

代码语言:javascript
复制
class MainWindow : public QWidget
{
    Q_OBJECT
    <...>
    private:
        QCamera* camera_;
        QGraphicsView *view;
        QGraphicsVideoItem *videoItem;
        QGraphicsScene *scene;
    <...>
}

mainwindow.cpp

代码语言:javascript
复制
MainWindow::MainWindow(QWidget *parent)
: QWidget(parent)
{
<...>
    camera_ = new QCamera;
    view = new QGraphicsView(this);
    scene = new QGraphicsScene(view);
    videoItem = new QGraphicsVideoItem;
    view->setScene(scene);
    scene->addItem(videoItem);

    QVBoxLayout *lay = new QVBoxLayout(this);
    lay->addWidget(view);
    this->setLayout(lay);
    view->show();
    camera_->setViewfinder(videoItem);

    camera_->start();
}

<...>

因此,在MainWindow对象被构造和显示之后,我们将在诺基亚C6-01上看到一个简单的取景器,在诺基亚N9上看到一个黑屏。

有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-05 14:52:07

我找到解决方案了!这是安全问题。我发现- Meego有类似于Symbian的“能力”。它被称为宙斯盾安全令牌。因此,要申请使用camera (或任何其他)的权限,您应该将your_application_name.agis文件添加到项目的"qtc_packaging/debian_harmattan“文件夹中。在我的例子中,这个文件包括:

代码语言:javascript
复制
<aegis>
    <request>
        <credential name="GRP::video"/>
        <credential name="GRP::pulse-access"/>
        <for path="/opt/testmobile/bin/testmobile"/>
   </request>
</aegis>

因此,权限在"credential“标记的"name”属性中定义,"for path“标记定义用于执行这些权限的包。

欲获知更多信息,请访问here

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7281014

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档