我正在尝试为 facebook 开发游戏,并且正在尝试通过 js-sdk 的“发布到时间线”功能。我的代码库是 java,使用 lib-gdx,问题是,我不知道如何调用显示“发布到时间线”提示的 js 函数。什么是正确的做法?我已经按照这里的描述尝试了这个,但不起作用:
public static native void publishFeed(int score) /*-{
publishFeed(score);
}-*/
我正在尝试为 facebook 开发游戏,并且正在尝试通过 js-sdk 的“发布到时间线”功能。我的代码库是 java,使用 lib-gdx,问题是,我不知道如何调用显示“发布到时间线”提示的 js 函数。什么是正确的做法?我已经按照这里的描述尝试了这个,但不起作用:
public static native void publishFeed(int score) /*-{
publishFeed(score);
}-*/
GWT 代码(通常)运行在 iframe 中,因此 JSNI 代码( )的(全局)范围与window
所谓的 HTML Host Page 的范围不同。那个叫$wnd
。
public static native void publishFeed(int score) /*-{
$wnd.publishFeed(score);
}-*/;
Java中的IUnknown::QueryInterface
类对象是类层次结构的根。每个类都有 Object 作为超类。所有对象,包括数组,都实现了这个类的方法。Object::getClass() 方法返回 'Class',它有许多有用的函数来发现 Java 类本身的细节。虽然详细解释超出了本文的范围,但我想指出 getInterfaces() 方法,它可以动态发现由 Java 类实现的接口。
我没有尝试从 JavaScript 中调用 getClass() 方法,因此无法评论它的可行性。但是使用基础设施类型的小程序,这个功能可以很容易地用于脚本代码。
检查这个链接希望你得到你想要的
http://www.codeproject.com/Articles/571/Java-to-JavaScript-Communication