Saya memiliki WKWebView yang memuat sekumpulan halaman web lokal menggunakan WKWebViewConfiguration
untuk mengatur konfigurasi agar @"allowFileAccessFromFileURLs"
menjadi kenyataan.
Permintaannya diatur dengan sesuatu seperti ini:
NSURL *url = [[NSBundle mainBundle] URLForResource:@"testPage" withExtension:@"html" subdirectory:@"html/pages"];
NSURLRequest *req = [[NSURLRequest alloc] initWithURL:url cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:10.0f];
Kemudian request dikirimkan menggunakan metode WKWebview berikut:
- (nullable WKNavigation *)loadRequest:(NSURLRequest *)request;
masalah saya adalah ketika perangkat memiliki koneksi saat ini tetapi tidak ada lalu lintas jaringan. Tampilan web sebagai elemen di layar akan ditambahkan ke layar dan permintaan akan dibuat tetapi tampilan web akan menampilkan layar putih selama sekitar 50 detik sebelum menampilkan konten lokal.
Segala sesuatu di tampilan web dimuat terlepas dari status jaringan karena dimuat secara lokal ketika tidak ada pengkondisi tautan yang disetel.
Misalnya jika perangkat terhubung ke nirkabel tetapi kondisioner tautan jaringan disetel ke 100% loss. Tampilan web dibuat dan permintaan dikirim untuk memuat konten lokal yang memicu terhentinya pemuatan.
Saya berpikir bahwa mungkin WKWebView mencoba melakukan semacam validasi di latar belakang yang memerlukan transaksi jaringan tetapi saya melakukan beberapa pembuatan profil jaringan dengan instrumen dan juga beberapa rekaman garis waktu di tampilan web safari dan saya tidak dapat melihat apa pun yang menyebabkannya. itu untuk digantung.
Satu-satunya alasan saya menganggapnya memuat konten lokal setelah sekitar 50 detik adalah karena ada semacam batas waktu WKWebView untuk memuat koneksi jaringan.
Bantuan apa pun akan sangat dihargai, terima kasih.