2015-02-24 2 views
0

Я работаю с этой функцией, где пользователь может использовать изображение в социальных сетях, таких как Facebook и Twitter. Изображение представляет собой скриншот некоторых экранов. и когда снимок сделан, я проверил галерею, и изображение находится на «Device/photos/image1.jpeg».bb10 каскады Совместное использование изображений для социальных медиа

И теперь я хочу поделиться этим образом с социальными медиа. вот мой код:

void invoke(QString target){ 
    InvokeManager invokeManager; 
    InvokeRequest request; 

    request.setAction("bb.action.SHARE"); 
// target == "Facebook" or "Twitter" 
    request.setTarget(target); 

// request.setMimeType("text/plain"); 
    request.setMimeType("image/jpeg"); 

// request.setUri(QUrl("Device/photos/image1.jpeg")); 
    request.setUri(QUrl::fromLocalFile("Device/photos/image1.jpeg")); 

    InvokeTargetReply *targetReply = invokeManager.invoke(request); 
    invokeManager.setParent(this); 

    if (targetReply == NULL) { 
      qDebug() << "InvokeTargetReply is NULL: targetReply = " ; 
     } else { 
      qDebug() << "reply != NULL "; 
//   qDebug() << "targetReply : " << targetReply->setParent(this); 
      qDebug() << "request action : " << request.action(); 
      qDebug() << "request target : " << request.target(); 
      qDebug() << "request uri : " << request.uri(); 
      qDebug() << "request mime : " << request.mimeType(); 

      targetReply->setParent(this); 
     } 
} 

Когда эта функция вызывается, ничего не произошло. и я вижу на консоли, он напечатал «reply! = NULL», что означает, что invokeTargetReply ответил на мой запрос. но ничего не произошло.

Я пытаюсь изменить mimeType на "text/Plain", поэтому он просто передает обычный текст в Facebook. И он отлично работает. Я предполагаю, что ошибки связаны с URI файла. Я не уверен, как правильно установить setUri. Может ли кто-нибудь мне помочь? Самая маленькая помощь была бы очень признательна.

Благодаря С уважением,

Йога

ответ

0

я был в состоянии решить эту проблему путем изменения setUri к этому:

QString workingDir = QDir::currentPath(); 
request.setUri(QUrl("file://" + workingDir + "/shared/photos/image1.jpeg")); 

спасибо!

Смежные вопросы