【问题标题】:Receiving Notifications with QWebEngine使用 QWebEngine 接收通知
【发布时间】:2018-12-26 15:24:08
【问题描述】:

我正在尝试开发一个打开 Messenger 的小应用程序,当有新消息时我需要通知用户

我正在使用 Qt 5.10,并且我已经开发了几乎所有其他功能,我只需要知道如何接收来自 Messenger 的通知,而不会处理其余的。 我想也许 Messenger 在有新消息时使用某种 JavaScript 调用,但我不确定,我没有这方面的经验。

PS:我也很想对 Discord 和 MEGA.nz 做同样​​的事情,希望 Messenger、Discord 和 MEGA.nz 都遵循同样的原则。

这是 MainWindow 的构造函数的主要代码:

p_UISettings = new QSettings("UISettings.ini" , QSettings::IniFormat);
this->resize(p_UISettings->value("Width" , 776).toInt() , p_UISettings->value("Height" , 508).toInt());

p_TrayIcon = new QSystemTrayIcon(QIcon(":/new/prefix1/Res/Messenger.png") , this);
QAction *Exit_TrayAction = new QAction(QIcon(":/new/prefix1/Res/1470421625_onebit_33.png") , "Close" , 0);
QObject::connect(p_TrayIcon , SIGNAL(activated(QSystemTrayIcon::ActivationReason)) , this , SLOT(showHide(QSystemTrayIcon::ActivationReason)));
QObject::connect(Exit_TrayAction , SIGNAL(triggered(bool)) , this , SLOT(forceClose()));
QMenu *Tray_Menu = new QMenu;
Tray_Menu->addAction(Exit_TrayAction);
p_TrayIcon->setContextMenu(Tray_Menu);
p_TrayIcon->show();

QWebEngineProfile::defaultProfile()->setPersistentCookiesPolicy(QWebEngineProfile::ForcePersistentCookies);
QWebEngineProfile::defaultProfile()->setPersistentStoragePath(QDir::currentPath() + "/Storage/");

ui->View_Widget->setUrl(QUrl("https://www.messenger.com"));

差不多就这些了,其他函数只是处理关闭+调整大小的事件而已。

【问题讨论】:

  • Messenger 是什么意思?你可以提供一个minimal reproducible example
  • @eyllanesc by Messenger 我的意思是 Facebook 的 Messenger (www.messenger.com),PS:我添加了我当前的代码

标签: c++ qt qtwebengine


【解决方案1】:

仅从 Qt 5.13 开始的 Qt WebEngine 支持 Web 通知

【讨论】:

  • 所以使用 Qt 5.12 无法解决这个问题
  • 您可以安装一些 javascript 来通过网络通道连接来处理它,这取决于您的需要。
猜你喜欢
  • 2023-03-17
  • 1970-01-01
  • 1970-01-01
  • 2019-10-07
  • 1970-01-01
  • 2016-01-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多