4

我在我的 BlackBerry WebWorks 应用程序中显示推文列表,用户应该能够通过 Twitter 共享这些推文。

我想使用 Twitter 的本地 BlackBerry 客户端,并通过调用对象调用它。我可以很好地启动 Twitter 应用程序,但是有谁知道需要哪些参数才能直接跳到从我的应用程序共享内容?

我正在使用以下内容成功调用 Twitter 客户端:

 try{

    var params = new Array();

    var args = new blackberry.invoke.JavaArguments('net_rim_bb_twitter', params);

    blackberry.invoke.invoke(blackberry.invoke.APP_JAVA, args);
 }catch(e){
    alert("Could Not Invoke App: "+e.name+" : "+e.message);
 }

谢谢大家!

4

1 回答 1

0

从 WebWorks 为了调用其他应用程序,您需要使用 JavaArguments(如您所做的那样),但不要添加参数,因为它仅使用模块名称不起作用:

new blackberry.invoke.JavaArguments('net_rim_bb_twitter');

这样,代码将尝试调用“net_tim_bb_twitter”。查看 BB 的 github 以及 JavaArguments 是如何实现的——它采用第一个参数并从 Array 参数创建一个 URL 查询。如果添加 ["par=val","par2=val2"] 之类的参数,则代码将尝试启动 'net_rim_bb_twitter?par=val&par2=val2" 如果操作系统或应用程序未指定,则不会启动任何内容。带参数的想法是调用正在侦听 URL 的应用程序。

不带参数使用只会启动应用程序,但不会在应用程序中预填充所需的字段,因此您需要在应用程序中创建一个屏幕以发布到 twitter 或仅使用网络意图https://dev.twitter.com /docs/intents和 BrowserArguments 启动漂亮的小 twitter 网络应用程序,其中预填充来自您的网络应用程序的数据。

于 2012-09-17T08:44:21.100 回答