2016-10-07 23 views
5

Tôi có thể sử dụng nhân viên dịch vụ bên trong các ứng dụng lai (ionic 1/cordova) chạy trên thiết bị Android không? Tôi gặp phải một số lỗi khi cố gắng cài đặt nhân viên dịch vụ trên ứng dụng ionic chạy trên thiết bị Android, vì android sử dụng giao thức tệp để phân phối tệp và người lao động dịch vụ yêu cầu tệp phải được giao thức HTTPS hoặc http (chỉ dành cho localhost):Nhân viên dịch vụ trên ứng dụng cordova

Lỗi khi đăng ký nhân viên dịch vụ: DOMException: Không thể đăng ký ServiceWorker: Giao thức URL của nguồn gốc hiện tại ('tệp: //') không được hỗ trợ.

Nó không phải là một ứng dụng web tiến bộ truyền thống chạy trên trình duyệt di động, mà thay vào đó là trên thiết bị Android (webview + cordova).

Tôi cần đạt được điều đó để tận dụng ứng dụng của mình bằng các chiến lược bộ nhớ cache (sử dụng sw-precache e sw-toolbox từ google) trên các cuộc gọi api của tôi.

+0

Nó không được hỗ trợ trong trình duyệt Android. Bạn không thể kiểm tra tại đây http://caniuse.com/#search=service%20workers – vbharath

+0

Mọi cập nhật cho vấn đề này? –

Trả lời

2

Thực ra, theo số caniuse, nó được hỗ trợ. Vấn đề là với giao thức được sử dụng.

Nếu bạn đọc trên Service Workers, bạn sẽ thấy trong các điều kiện tiên quyết trong sản xuất bạn bắt buộc phải sử dụng HTTPS.

Sử dụng lối đi qua đường có thể giúp đỡ, hãy xem XWALK-5919.

Các vấn đề liên quan