[英]Web App Manifest: "start_url" doesn't work for Safari
“start_url”適用於 Android 瀏覽器,但對於 iPhone,Safari 始終使用當前頁面的 URL 並忽略“start_url” 。
例如,當前頁面是https://test.com/index.html ,在 manifest 中"start_url"設置為"start_url": "index.html?flag=1" ,但是當頁面被添加到Safari 的主屏幕,它仍然使用https://test.com/index.html ,沒有參數。
有沒有辦法應用不同的 URL 作為 Safari 的啟動 URL?
"start_url"適用於 Android 瀏覽器,但對於 iPhone,Safari 總是使用當前頁面的 URL 並忽略"start_url" 。
例如,當前頁面是https://test.com/index.html ,清單上的"start_url"設置為"start_url": "index.html?flag=1" ,但是當頁面添加到Safari 上的主屏幕,它仍然使用https://test.com/index.html ,沒有參數。
有沒有辦法應用不同的 URL 作為 Safari 的啟動 URL?
我在這里實現的一個 hacky 解決方案是在提示用戶安裝 PWA 的頁面上靜默更改 URL: history.pushState({}, "", "/");
(見: https : //stackoverflow.com/a/56691294/827129 )
這將更新 URL,但不會導致頁面重新加載或刷新 DOM,因此您可以正常看到您所在的頁面,但是當用戶去安裝 PWA( Add to home screen
)時,它會保存根 URL,以便他們在打開 PWA 時看到的內容。
這里的缺點包括:
history.pushState()
的頁面,因此他們需要按兩次后退才能真正返回在我的用例中,這已經足夠好了,可能會有額外的解決方案來處理這些問題,這些問題可以應用在這個解決方案之上以改進 UX。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.