Я создал флаттер-приложение, которое отлично работает на мобильных устройствах — android/ios.
Это же приложение было развернуто как PWA.
Теперь это приложение отлично работает в веб-браузерах при доступе с ноутбука или настольного компьютера.
После открытия его из мобильного браузера оно работает нормально и может загружаться как положено. Но когда мы проверяем опцию «Сайт для ПК» в Chrome (с мобильного телефона), он показывает белый экран.
-> Это ЕДИНСТВЕННЫЙ случай, когда отображается пустая белая страница.




Проверяем это в веб-браузере Chrome с мобильного устройства.
Загруженное PWA на мобильных устройствах также работает должным образом.
Версия Flutter:
Код: Выделить всё
Flutter 3.24.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 2663184aa7 (3 weeks ago) • 2024-09-11 16:27:48 -0500
Engine • revision 36335019a8
Tools • Dart 3.5.3 • DevTools 2.37.3
Код: Выделить всё
Index.htmlКод: Выделить всё
******
// The value below is injected by flutter build, do not touch.
const serviceWorkerVersion = null;
window.addEventListener('load', function(ev) {
// Download main.dart.js
_flutter.loader.loadEntrypoint({
serviceWorker: {
serviceWorkerVersion: serviceWorkerVersion,
},
onEntrypointLoaded: function(engineInitializer) {
engineInitializer.initializeEngine().then(function(appRunner) {
appRunner.runApp();
});
}
});
});
Код: Выделить всё
Manifest.jsonКод: Выделить всё
{
"name": "***",
"short_name": "***",
"start_url": "./index.html",
"display": "standalone",
"background_color": "***",
"theme_color": "***",
"description": "***",
"orientation": "portrait-primary",
"prefer_related_applications": false,
"icons": [
{
"src": "icons/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png"
},
{
"src": "icons/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png"
},
{
"src": "icons/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "icons/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
}
]
}
Пожалуйста, дайте мне знать, если я делаю какие-нибудь глупые ошибки.
P.S. - Он не работает с Android. Но, похоже, это работает для iOS.
Подробнее здесь: https://stackoverflow.com/questions/790 ... be-browser
Мобильная версия