我在Symbian ^ 3上遇到Qt.openUrlExternally
有些困难。有时候它有效,有时候没有,我找不到任何模式。
另一位用户似乎遇到了同样的问题here。
当它不起作用时,实际行为是Web浏览器打开,短暂到达前景(几秒钟),然后转到后台。它仍处于打开状态,但URL未加载。
Qt.openUrlExternally("http://www.stackoverflow.com")
有效。
Qt.openUrlExternally("http://twitter.com/share?text=ZOMG")
失败。我最初得出结论,这意味着任何带有?
的网址都不起作用,但这是错误的,因为......
Qt.openUrlExternally("http://twitter.com/intent/tweet?text=ZOMG")
有效。但是,它似乎仅用于一个词,因为:
Qt.openUrlExternally("http://twitter.com/intent/tweet?text=Will%20this%20work")
失败。
有没有人遇到过类似的问题(特别是我猜想将任意文本发送到Twitter),他们对此做了什么?
答案 0 :(得分:0)
好的,在Qt forum上有结果。 Qt.openUrlExternally
似乎不喜欢包含%20
的网址作为转义空间。 +
有效。 (这引起了我的注意,我上面的第二个断言是错误的,http://twitter.com/share?text=ZOMG
确实有效)。
解决方案似乎是通过Javascript的encodeURIComponent()
函数传递URI参数,并用%20
替换所有生成的+
。