Erro ao exportar imagem através do hub de conteúdo

1


Estou escrevendo um aplicativo e estou tentando incorporar o hub de conteúdo nele.
Meu aplicativo faz o download de vários formatos de arquivo, por isso desejo exportar imagens, vídeos e outros tipos de conteúdo para outros aplicativos.
Eu segui este guia do hub de conteúdo , mas achei que faltava exemplos para exportar conteúdo. < br> De qualquer forma, quando estou tentando exportar qualquer conteúdo, o estado da transferência sempre muda para "abortado" imediatamente e não tenho idéia do porquê.
Aqui está o meu componente OpenContentPopup:

PopupBase {
    id: root

    property var activeTransfer
    property var items: []
    property alias contentType: peerPicker.contentType

    Connections {
        target: activeTransfer
        onStateChanged: {
            console.log("Transfer state changed to " + activeTransfer.state)
        }
    }

    ContentPeerPicker {
        id: peerPicker
        handler: ContentHandler.Destination

        onPeerSelected: {
            for (var i = 0; i < items.length; i++) {
                console.log("Sharing item with name: " + items[i].name + ", url: " + items[i].url)
            }

            activeTransfer = peer.request()
            activeTransfer.items = root.items
            activeTransfer.state = ContentTransfer.Charged
            PopupUtils.close(root)
        }

        onCancelPressed: {
            PopupUtils.close(root)
        }
    }
}

Quando estou tentando exportar uma imagem, o ContentPeerPicker me dá a opção de abrir o aplicativo Galeria, mas quando eu seleciono o aplicativo de galeria, o aplicativo de galeria não é aberto e parece que o estado da transferência é abortado (ou 5 ..).
Meus logs no exemplo de código me dão:

<debug> Sharing item with name: name, url: file:///home/phablet/.local/share/com.nogzatalz.downow/download/Cover.jpg
<debug> Transfer state changed to 5

manifest.json:

{
    "name": "com.nogzatalz.downow",
    "description": "Torrent downloading app",
    "framework": "ubuntu-sdk-14.10-qml-dev3",
    "architecture": "armhf",
    "title": "DowNow",
    "hooks": {
        "downow": {
            "desktop": "downow.desktop",
            "apparmor": "apparmor.json",
            "urls": "urldispatcher.json",
            "content-hub": "content-hub.json"
        }
    },
    "version": "0.1.28",
    "maintainer": "DowNow Support <[email protected]>"
}

content-hub.json:

{
    "source": [
        "pictures",
        "videos"
    ]
}

apparmor.json:

{
    "policy_groups": [
        "networking",
        "content_exchange",
        "content_exchange_source",
        "audio"
    ],
    "policy_version": 1.2
}

Eu realmente acho que precisamos de melhores mensagens de erro ...
Qualquer ajuda é apreciada!
Obrigado, Tal

    
por meta221 15.08.2014 / 11:11

2 respostas

1

Acho que o problema é que você está tentando cobrar antes que a transferência esteja pronta. Veja isto como um exemplo:

link

    
por Ken VanDine 15.08.2014 / 21:03
0

Aparentemente, o código que compartilhei estava correto.
Na minha função principal eu tinha:

setenv("APP_ID", "com.nogzatalz.downow", /*overwrite*/ true);

Acho que essa armadura de aplicativos está desarrumada ..
Eu só coloquei lá porque eu costumava ter erros sobre o APP_ID não estar definido ou algo assim ..
Enfim, obrigado por toda sua ajuda a todos! =)

    
por meta221 16.08.2014 / 02:02