我在我的firebreath项目中使用objective - c++。问题是我正在使用Xcode 4,我找不到调试项目的方法。所以我想如果我的方法是从网页调用。这是我的源代码:在我的OpenOnDesktopPluginAPI.h
类:
class OpenOnDesktopPluginAPI : public FB::JSAPIAuto
{
public:
OpenOnDesktopPluginAPI(const OpenOnDesktopPluginPtr& plugin, const FB::BrowserHostPtr& host);
virtual ~OpenOnDesktopPluginAPI();
OpenOnDesktopPluginPtr getPlugin();
...
//This is my method
void runNotification();
...
};
在我的OpenOnDesktopPluginAPI.mm
课上:
OpenOnDesktopPluginAPI::OpenOnDesktopPluginAPI(const OpenOnDesktopPluginPtr& plugin, const FB::BrowserHostPtr& host) : m_plugin(plugin), m_host(host)
{
...
//Register my method
registerMethod("runNotification", make_method(this, &OpenOnDesktopPluginAPI::runNotification));
...
}
//DistributedNotification类是我的objective-c类,用于发布分布式通知。
void OpenOnDesktopPluginAPI::runNotification()
{
DistributedNotification * notificationClass = [[DistributedNotification alloc] init];
[notificationClass postNotification];
[notificationClass release];
}
在我的FBControl.html
:…myFunction()函数{.runNotification插件()();}…我的新方法
…
我把我的DistributedNotification.mm
类在
Build Phases -> "Compile Sources"
为我的插件目标。但我不知道如果我的runNotification
方法被调用,因为当(在我的网页)我点击My new method
链接,什么都没有发生。
我会重复我在论坛上说过的话;也许你还没有看到这个答案:
首先,你可以用Xcode4调试,至少在某些浏览器上是这样;关键是要找出连接到哪个进程。
其次,你总是可以使用NSLog将事情记录到控制台。第三,您可以使用log4cplus(参见http://www.firebreath.org/display/documentation/Logging)。
最后,您没有指定要在哪个浏览器上进行测试,也没有指出会发生什么。看起来很合理,但显然行不通?什么不起作用?它是做什么的?