如何为 HTML 应用程序发出通知

Posted

技术标签:

【中文标题】如何为 HTML 应用程序发出通知【英文标题】:How to make a notification for a HTML app 【发布时间】:2015-12-28 16:26:47 【问题描述】:

我正在使用英特尔 XDK 制作 html 应用程序。 我知道使用 HTML 制作应用程序并不常见,但它只是我知道的唯一一种与 CSS 一起使用的语言。

我希望我的应用每周都有通知,这样我就不需要更新任何内容。我只想让我的应用程序每周一说:“新信息到了”。 有谁知道这是否有任何代码,或者这是否可能? 我非常不擅长编码,所以除了 HTML/CSS 之外我不知道很多编码术语。 (顺便说一句,我为 ios 制作应用程序。)

【问题讨论】:

【参考方案1】:

仅使用 html 和 css 是不可能的。简单地说,HTML 只是一种标记语言,用于标记文本和图像等内容,以便浏览器知道如何呈现它们,以便 css 和 javascript 可以与它​​们交互。您将需要合并一些 javascript 来执行您的建议。例如,如果您将此代码复制粘贴到浏览器的控制台中并按 Enter 键,则会出现一个带有日期的弹出窗口。 alert(new Date()) 仅使用 html 和 css 根本不可能进行这样的操作。我为您制作了这个小代码 sn-p 来模拟您如何检查今天是哪一天,并提醒“新信息!”或“没有新信息,因为今天不是星期一”。我承认我不熟悉英特尔 XDK,但向您提问 - 您将需要某种形式或方式的 javascript。无论如何,也许我的回答会给你一些想法,并为你指明正确的方向。

var dateNow = new Date()
var dayOfWeek = dateNow.getDay()

var week = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']

if (dayOfWeek == 1)  //if dayOfWeek == 1 then today is monday
    alert('New info has arrived')
else //if dayOfWeek is not 1 then today is not monday
    alert('Today is ', week[dayOfWeek], '. There are no updates available on ', week[dayOfWeek], 's.')

【讨论】:

// 之后的任何内容都是注释而不是代码。它不会被javascript读取。它可以帮助理解我的逻辑。 另外,您可以将 javascript 直接包含在您的 .html 文件中,方法是将其包装在 感谢您的回复!你真的帮助我理解我在做什么。我将尝试使用此代码进行试验并开始学​​习 javascript 以更好地理解代码。 没问题,伙计。如果有帮助,请投赞成票。祝你的项目好运。【参考方案2】:

其实你可以做到的。

查看此网站:http://www.darianshimy.com/blog/2012/08/14/web-notifications-in-chrome-and-safari/

但基本上它使用的是跨浏览器工作的通知 api。

例如Notification.requestPermission()会弹出“你允许这个网站访问通知,是或否”

然后您可以在需要时继续创建通知。

完整的 API 在这里:https://developer.mozilla.org/en-US/docs/Web/API/Notifications_API/Using_the_Notifications_API

【讨论】:

以上是关于如何为 HTML 应用程序发出通知的主要内容,如果未能解决你的问题,请参考以下文章

Flutter - 如何为消息应用程序实现通知?

我应该如何为推送通知签署 Mac 应用程序?

应用程序启动后,如何为用户订阅主题以获取通知?

如何为应用程序在后台显示的通知设置自定义布局?

如何为我的 php web 应用程序提供桌面通知? [复制]

如何为启用了后台的 iOS 应用程序获取 applicationWillTerminate 通知?