★AppGiaiTri Đăng nhập
Dùng ứng dụng web đúng cách

Dùng ứng dụng web khi mất mạng: máy cất gì, phần nào phải chờ sóng và cách tự kiểm tra

Vì sao có ứng dụng mất mạng vẫn chạy, có cái hiện trang trắng; lượt chơi ngoại tuyến có lên bảng xếp hạng không, tiến độ đồng bộ lúc nào, vì sao sóng yếu còn tệ hơn mất hẳn và bốn bước kiểm tra trước chuyến đi.

Dùng ứng dụng web khi mất mạng: máy cất gì, phần nào phải chờ sóng và cách tự kiểm tra

“Chạy được khi mất mạng” là câu hay được ghi trong phần giới thiệu ứng dụng web, nhưng ít ai nói rõ nó chạy được đến đâu. Lên xe khách về quê, qua đoạn đèo mất sóng, mở ứng dụng ra thì có cái chạy ngon lành, có cái hiện trang trắng, có cái vào được nhưng không lưu được thành tích. Ba kết quả khác nhau đó không phải do may rủi. Chúng đến từ việc máy đã cất sẵn những gì, và phần nào của ứng dụng buộc phải hỏi máy chủ. Hiểu được chỗ này, bạn biết trước khi lên đường cần làm gì, và biết khi nào nên chờ có sóng.

Ai cất đồ cho ứng dụng khi còn mạng

Mỗi ứng dụng web làm tử tế có một đoạn mã nhỏ chạy riêng, gọi là “người gác cổng” (tên kỹ thuật là service worker). Lần đầu bạn mở ứng dụng khi có mạng, người gác cổng tải về và cất vào một ngăn riêng trên máy toàn bộ phần cần để chạy: khung trang, mã điều khiển, hình vẽ, biểu tượng. Từ đó, mỗi lần ứng dụng cần một tệp, người gác cổng đứng giữa: tệp đã có trong ngăn thì đưa ra ngay, chưa có thì mới đi lấy qua mạng.

Với các ứng dụng trong AppGiaiTri, ngăn cất này rất nhỏ. Phần chạy của một ứng dụng như Giao Đấu chỉ khoảng mười mấy tệp: một trang, vài tệp mã, một tệp giao diện, biểu tượng. Âm thanh không phải tải về vì được máy tự tổng hợp ngay lúc chơi bằng bộ xử lý âm thanh của trình duyệt, không có tệp nhạc nào. Nhờ vậy, chỉ cần một lần mở trọn vẹn khi có mạng là đủ để lần sau chạy được hoàn toàn khi không có sóng.

Chữ “trọn vẹn” quan trọng. Nếu bạn mở ứng dụng lúc sóng yếu, trang vừa hiện lên đã vuốt thoát ra, người gác cổng có thể chưa kịp cất xong. Nó cất theo kiểu “được cả hoặc không được gì”: thiếu một tệp là cả đợt cất bị huỷ, lần sau lại làm từ đầu. Đây là lý do có người kể “hôm qua mở được rồi mà nay mất mạng lại không vào được”.

Phần nào chạy được, phần nào phải chờ mạng

ViệcKhi mất mạngGhi chú
Mở ứng dụng, chơi một lượtĐượcNếu đã mở trọn vẹn ít nhất một lần khi có mạng
Lưu tiến độ trên máyĐượcMọi thay đổi luôn ghi vào máy trước
Đồng bộ tiến độ lên tài khoảnChờĐược đẩy lên ở lần mở kế tiếp có mạng
Đăng nhập, đăng xuấtKhôngPhải hỏi máy chủ tài khoản
Bảng xếp hạng, thử thách tính điểmKhôngLượt chơi lúc mất mạng là lượt “trên máy”, không được ghi lên bảng
Cài đặt âm lượng, hiệu ứngĐượcCài đặt nằm trên máy, không cần mạng

Dòng về bảng xếp hạng cần nói thêm. Khi có mạng, mỗi lượt chơi tính điểm được máy chủ cấp một mã riêng lúc bắt đầu, và kết quả gửi về phải khớp với mã đó thì mới được ghi. Cách này chặn việc sửa điểm ngay trên máy. Khi mất mạng, ứng dụng không xin được mã, nên nó cho bạn chơi bằng một lượt tự tạo trên máy. Bạn vẫn chơi đủ, vẫn thấy kết quả, nhưng lượt đó không được đưa lên bảng dù sau đó có mạng lại. Đây là cố ý, không phải lỗi: một bảng xếp hạng nhận điểm không kiểm được thì không còn công bằng.

Còn tiến độ (màn đã qua, môn đã mở, lựa chọn đã lưu) thì không mất. Ứng dụng luôn ghi vào máy trước, rồi nếu bạn đã đăng nhập và đang có mạng thì mới đẩy lên tài khoản. Lúc mất mạng, bước đẩy lên bị bỏ qua; lần tới bạn mở ứng dụng khi có sóng, nó kéo bản trên tài khoản về, gộp với bản trên máy rồi đẩy lại. Gộp chứ không ghi đè: nếu bạn chơi trên hai máy, mỗi máy tiến thêm một ít lúc không có mạng, phần tiến độ của cả hai đều được giữ.

Mạng chập chờn còn khó chịu hơn mất hẳn

Điều ít ai ngờ: bật chế độ máy bay, ứng dụng mở ra gần như ngay lập tức; còn đứng ở chỗ sóng một vạch, nó lại quay rất lâu mới hiện. Lý do nằm ở cách người gác cổng xử lý riêng trang chính. Với các tệp mã và hình, nó lấy từ ngăn cất trước. Nhưng với trang chính, nó hỏi mạng trước để bạn luôn nhận bản mới nhất, chỉ khi mạng báo hỏng mới lấy bản cất. Khi mất hẳn mạng, lời báo hỏng đến ngay, nên trang bản cất hiện ngay. Khi sóng chập chờn, yêu cầu cứ treo lơ lửng chờ, không thành công mà cũng chưa hỏng, và bạn phải đợi.

Cách xử lý thực tế: đang ở chỗ sóng yếu mà cần mở nhanh, hãy bật chế độ máy bay, mở ứng dụng, rồi tắt chế độ máy bay khi đã vào trong. Ứng dụng tự nhận ra có mạng trở lại và cập nhật trạng thái tài khoản, không cần tải lại.

Cách tự kiểm tra trước khi đi xa

  1. Mở ứng dụng khi có Wi-Fi ổn định, chơi hẳn một lượt ngắn để chắc mọi phần đã tải.
  2. Đóng hẳn ứng dụng: vuốt lên để thoát khỏi trình chuyển ứng dụng, không chỉ về màn hình chính.
  3. Bật chế độ máy bay, rồi mở lại ứng dụng từ đúng chỗ bạn sẽ mở trên đường: nếu định mở từ biểu tượng trên màn hình chính thì thử từ biểu tượng, không thử bằng trình duyệt.
  4. Vào được, chơi được một lượt, thấy nút tài khoản hiện chữ “Ngoại tuyến” là đạt. Hiện trang báo không kết nối được là ngăn cất chưa đủ, quay lại bước 1.

Bước 3 hay bị làm sai nhất. Trên iPhone, ứng dụng mở từ màn hình chính và trang mở trong Safari có hai kho dữ liệu tách biệt, nên ngăn cất cũng tách biệt. Thử trong Safari thấy chạy không có nghĩa biểu tượng trên màn hình chính cũng chạy, và ngược lại. Trên Android, Chrome và ứng dụng đã cài dùng chung một kho nên ít gặp chuyện này hơn.

Dữ liệu cất trên máy có bị dọn không

Trình duyệt coi ngăn cất của trang web là thứ có thể dọn khi cần chỗ. Trên iPhone, trang mở trong Safari mà bảy ngày không được mở lại thì dữ liệu lưu trên máy của trang đó có thể bị xoá. Ứng dụng đã thêm vào màn hình chính không bị áp quy tắc bảy ngày này. Trên Android, Chrome chỉ dọn khi máy thiếu chỗ nghiêm trọng.

Phần mất khi bị dọn khác nhau tuỳ bạn có đăng nhập hay không. Đã đăng nhập thì tiến độ nằm trên tài khoản, mở lại có mạng là về như cũ. Chưa đăng nhập thì tiến độ chỉ nằm trên máy, bị dọn là mất.

Riêng Thỏ Dâu không có tài khoản, mọi thứ bé làm (ngôi nhà, đồ đạc, ảnh và video trong mục Câu chuyện) chỉ nằm trên máy. Khi bé quay phim, ứng dụng xin trình duyệt đánh dấu kho này là “cần giữ”, để trình duyệt ưu tiên không dọn. Nhưng xin là xin, trình duyệt có quyền từ chối. Cách chắc chắn là vào góc Phụ huynh, dùng “Xuất bản lưu” để tải một tệp sao lưu về máy, nhất là trước khi đổi máy hay dọn dung lượng. Video muốn giữ lâu thì bấm “Lưu video” để tải thành tệp riêng.

Xem ứng dụng đang chiếm bao nhiêu chỗ

  • iPhone: Cài đặt → Safari → Nâng cao → Dữ liệu trang web. Danh sách hiện từng tên miền và dung lượng. Chỉ xoá khi bạn chắc đã đăng nhập hoặc đã sao lưu, vì xoá ở đây là xoá cả tiến độ trên máy.
  • Android: trong Chrome, bấm biểu tượng bên trái thanh địa chỉ → Cài đặt trang web, sẽ thấy dung lượng đã lưu và nút xoá. Ứng dụng đã cài thì xem thêm ở Cài đặt → Ứng dụng.

Phần lớn ứng dụng giải trí web chỉ chiếm vài megabyte. Con số lớn bất thường thường đến từ ảnh và video người dùng tự tạo, như kho Câu chuyện của Thỏ Dâu, chứ không phải từ bản thân ứng dụng.

Cái không cần làm

  • Không cần tải lại liên tục để “cập nhật cho chắc”. Có mạng thì mỗi lần mở, trang chính đã được hỏi bản mới; bản cũ trong ngăn cất tự bị xoá khi bản mới vào.
  • Không cần đăng xuất trước khi mất mạng. Phiên đăng nhập vẫn nằm trên máy; có mạng lại là tiếp tục đồng bộ.
  • Không cần để ứng dụng mở suốt chuyến đi. Khi bạn chuyển sang ứng dụng khác, vòng vẽ hình và âm thanh tự dừng, không ngốn pin; mở lại là chạy tiếp.

Câu hỏi thường gặp

Ứng dụng web có chạy được khi không có mạng không?

Được, nếu ứng dụng có cơ chế cất sẵn và bạn đã mở nó trọn vẹn ít nhất một lần khi có mạng. Phần cần máy chủ như đăng nhập, bảng xếp hạng thì phải chờ có mạng lại.

Chơi lúc mất mạng thì tiến độ có bị mất không?

Không. Tiến độ luôn được ghi vào máy trước. Nếu đã đăng nhập, lần tới mở ứng dụng khi có mạng nó sẽ gộp với bản trên tài khoản rồi đồng bộ lên.

Vì sao lượt chơi lúc mất mạng không có trên bảng xếp hạng?

Lượt tính điểm phải được máy chủ cấp mã lúc bắt đầu để kiểm tra kết quả. Mất mạng thì không có mã, lượt đó chỉ được tính trên máy để bảng xếp hạng không nhận điểm chưa kiểm được.

Sóng yếu mở ứng dụng rất lâu, bật máy bay lại nhanh, sao vậy?

Trang chính luôn hỏi mạng trước để lấy bản mới, chỉ dùng bản cất khi mạng báo hỏng. Sóng yếu làm yêu cầu treo chờ, còn chế độ máy bay báo hỏng ngay nên bản cất hiện liền.

Thử trong Safari chạy được mà mở từ màn hình chính lại không vào được?

Trên iPhone, ứng dụng trên màn hình chính có kho dữ liệu tách khỏi Safari. Hãy mở biểu tượng trên màn hình chính một lần khi có mạng để nó tự cất phần của mình.

Làm sao giữ thế giới Thỏ Dâu của bé khi đổi điện thoại?

Vào Cài đặt, giữ nút Phụ huynh 2 giây, chọn Xuất bản lưu để tải tệp sao lưu. Sang máy mới, mở Thỏ Dâu và dùng Nhập bản lưu với tệp đó.

Cần tư vấn cụ thể cho trường hợp của bạn?

Chúng tôi sẽ liên hệ trong vòng 24 giờ.

Đăng ký tư vấn ngay

Bài viết liên quan

Bạn cần hỗ trợ thêm?

Để lại thông tin, chúng tôi sẽ liên hệ trong 24 giờ.