Tự xây dựng cơ chế update app khi không có google play store

Tram Ho

Hiện tại hầu hết các app đều được phân phối qua google play store, tuy nhiên vì một lí do nào đó mà bạn không sử dụng cách phân phối này mà vẫn muốn có thể update được app khi cần, thì bạn cũng không có gì phải lo cả vì chúng ta hoàn toàn có thể tự xây dựng một cơ chế update cho những app như vậy.

Về cơ bản việc update app khi không sử dụng google pay store sẽ bao gồm các bước

  1. Upload apk version mới lên server
  2. Thông báo có version mới
  3. App check có version mới sẽ hiển thị màn hình update kèm nội dung liên quan đến update
  4. App tải apk và tiến hành cài đặt

Mỗi khi có version app mới thì bạn sẽ cần thực hiện lần lượt theo các bước ở trên.

Và giờ chúng ta cùng đi vào từng bước nhé

1. Upload apk version mới lên server

Phần này thì tuỳ các bạn có thể xây dựng server để lưu file hoặc như bản thân mình sẽ chọn up file apk lên github cho nhanh gọn

Ảnh dưới đây là một ví dụ:

https://github.com/dangquanuet/wifi-hunter-public/blob/develop/apk/wifi-hunter-code-2-name-1-0-1.apk

Lưu ý: với github thì bạn cần tải thử apk để lấy chính xác link chứa file và cung cấp cho app,

Ở ví dụ trên thì link để tải file là

2. Thông báo có version mới

Có nhiều cách để làm việc này như

  • Xây dựng một server với api trả về thông tin version mới
  • Dùng Firebase remote config để trả về thông tin phiên bản mới

Thông tin về version mới nên bao gồm một số trường cơ bản như

  • version code
  • version name
  • apk url
  • release notes

3. App check có version mới sẽ hiển thị màn hình update kèm nội dung liên quan đến update

Trong app bạn sẽ cần implement việc check version mới, có thể là thực hiện mỗi khi mở app sẽ check version code hiện tại của app so với version code app update trên server

Nếu version code app hiện tại nhỏ hơn version code app trên server thì bạn có thể thực hiện chuyển tới màn force update app.

Màn force update app nên hiển thị các thông tin cơ bản nhất về verson mới và button để người dùng quyết định có update app ngay lúc đó hay không.

4. App tải apk và tiến hành cài đặt

Khi người dùng nhấn update app, bạn sẽ thực hiện lần lượt các việc là

  • Config AndroidManifest.xml

Các bạn cần đảm bảo runtime permission cho các device chạy Android 6 trở lên nhé, có thể tham khảo cách request runtime permission nhanh gọn lẹ ở đây

https://github.com/dangquanuet/The-Movie-DB-Kotlin/blob/develop/app/src/main/java/com/example/moviedb/utils/PermissionUtils.kt

  • Tài apk mới từ url về device

  • Lắng nghe khi nào quá tình download thực hiện xong qua receiver

  • Hiển thị pop up cài đặt app:

Lưu ý: Để có thể cài đặt app từ apk thì bạn cần đảm bảo user đã enable setting cho phép caì đặt app từ nguồn không xác định:

  1. Go to your phone’s Settings
  2. Go to Security & privacy > More settings
  3. Tap on Install apps from external sources
  4. Select the browser you want to download APK files from
  5. Toggle Allow app installs ON

Như vậy là bạn đã cài đặt xong một cơ chế để update app mà không cần qua google play store 😃

Hẹn gặp lại các bạn trong các bài viết tới.

Chia sẻ bài viết ngay

Nguồn bài viết : Viblo