A verdade é que a API não fornece suporte para isso. Porque a API implementa o sandbox através do hub de conteúdo. Meu aplicativo teria que passar pelo sandbox.
Eu tentei criar um aplicativo de reprodução de vídeo e este é o código que eu tenho até agora:
import QtQuick 2.0
import QtMultimedia 5.0
import Ubuntu.Components 1.1
import QtQuick.Dialogs 1.0
Video {
FileDialog {
id: fileDialog
title: "Please choose a file(.mp4)"
Component.onCompleted: visible = true
}
id: video
width : units.gu(120)
height : units.gu(90)
source : fileDialog.fileUrl
MouseArea {
Text
{
text : "click to play,space for stop,left and right to seek position in video"
}
anchors.fill: parent
onClicked: {
video.play()
}
}
focus: true
Keys.onSpacePressed: video.playbackState == MediaPlayer.PlayingState ? video.pause() : video.play()
Keys.onLeftPressed: video.seek(video.position - 5000)
Keys.onRightPressed: video.seek(video.position + 5000)
}
O código roda perfeitamente bem no meu IDE, no entanto, quando eu o instalo no meu Ubuntu 15.04 com unidade 8 no meu laptop, o aplicativo simplesmente falha. Eu estou supondo QtQuick.Dialogs 1.0 pode não ser parte da plataforma? Então, como eu empacotá-lo no meu. Click? Ou há uma alternativa que faz parte da plataforma?
A verdade é que a API não fornece suporte para isso. Porque a API implementa o sandbox através do hub de conteúdo. Meu aplicativo teria que passar pelo sandbox.