[英]Firebase on iPad's Safari; Can't find variable: Notification
您使用的 firebase JavaScript 庫與 iOS 上的 Safari 不兼容。 在 iOS 設備上運行的 Safari 瀏覽器與應用程序的桌面版本不同,並且沒有相同的功能集。
在這種特定情況下,iOS Safari 會在您的 firebase.js 庫上拋出錯誤,嘗試使用 Web 通知 API 的 requestPermission() 方法以允許 firebase 向用戶顯示通知。 但是,通知 API 不存在。
您可以在此處查看對 Notification API 的支持: http : //caniuse.com/#search=Notification
當您的 Web 應用程序在不支持它的移動設備上查看時,您可能需要查看替代方案或禁用 Firebase 庫。 如果它應該在 iOS Safari 上工作,那么你應該向 Firebase 提交錯誤,看看是否有可用的補丁或更新來解決 firebase.js 庫中的問題。
iOS 不支持通知 API https://caniuse.com/#search=Notification
我創建了一個函數,讓您知道用戶的瀏覽器是否支持它。
const isSupported = () =>
'Notification' in window &&
'serviceWorker' in navigator &&
'PushManager' in window
並在使用 Notification API 之前使用它
例如:
if (isSupported()) {
const hasPermission = Notification.permission === 'granted'}
Firebase JavaScript Safari(包括iOS Safari)仍然不支持SDK的雲消息。
為了通過那些不受支持的瀏覽器的初始化,我剛剛創建了類似的檢查 function, 實際 firebase SDK 使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.