Lưu ý: Các tính năng được mô tả trên trang này hiện chỉ dành cho một số đối tác chọn lọc của Play.
Tính năng tự động bảo vệ của Google Play là một dịch vụ giúp bạn bảo vệ ứng dụng và trò chơi của mình khỏi hành vi vi phạm tính toàn vẹn dưới hình thức sửa đổi và phân phối lại trái phép. Tính năng tự động bảo vệ có thể hoạt động trong ứng dụng của bạn mà không cần kết nối dữ liệu. Nhà phát triển không cần làm gì trước khi kiểm thử cũng như không cần tích hợp vào máy chủ phụ trợ mà chỉ cần nhấp chuột trong Play Console để bật tính năng này.
Cách hoạt động
Tính năng tự động bảo vệ bổ sung các quy trình kiểm tra trong thời gian chạy vào mã nguồn của ứng dụng để hạn chế việc sửa đổi và phân phối lại. Sau đó, tính năng dùng phương thức làm rối mã nguồn nâng cao và kỹ thuật chống đảo ngược để gây khó khăn cho việc loại bỏ những quy trình kiểm tra đó. Nếu quy trình kiểm tra cho thấy ứng dụng không được cài đặt từ Play, thì người dùng sẽ thấy lời nhắc tải ứng dụng của bạn qua Google Play. Nếu quy trình kiểm tra cho thấy có sửa đổi, ứng dụng sẽ không chạy. Việc này giúp bảo vệ người dùng khỏi nội dung có hại có thể xuất hiện trong phiên bản đã sửa đổi của ứng dụng.
Tính năng tự động bảo vệ được thiết kế nhằm mục đích sau:
- Ngăn chặn việc sửa đổi trái phép: Tính năng tự động bảo vệ giúp bảo vệ ứng dụng khỏi hành vi sửa đổi, làm tăng mức độ khó khăn cho việc phân phối những bản sao không chính thức có hành vi bị thay đổi (chẳng hạn như xoá thông tin thanh toán, thêm quảng cáo, thay đổi mã nhận dạng chủ sở hữu quảng cáo hoặc thêm phần mềm độc hại).
- Ngăn chặn hành vi vi phạm bản quyền của ứng dụng có tính phí: Tính năng tự động bảo vệ ngăn chặn hành vi vi phạm bản quyền bằng cách nhắc những người cài đặt phiên bản chưa sửa đổi của ứng dụng trên Play thông qua nguồn không chính thức rằng họ nên mua ứng dụng này trên Google Play. Lời nhắc này là không bắt buộc và bạn có thể tắt đi bằng cách bỏ đánh dấu phần "Yêu cầu cài đặt qua Google Play" trên trang thiết lập tính năng Tự động bảo vệ tính toàn vẹn.
- Tăng số lượng người dùng nhận được bản cập nhật chính thức: Tính năng tự động bảo vệ có thể nhắc những người dùng cài đặt phiên bản chưa sửa đổi của ứng dụng trên Play không qua cửa hàng rằng họ nên thêm ứng dụng vào thư viện Play để có thể nhận được các bản cập nhật sau này của ứng dụng. Lời nhắc này là không bắt buộc và bạn có thể tắt đi bằng cách bỏ đánh dấu phần "Yêu cầu cài đặt qua Google Play" trên trang thiết lập tính năng Tự động bảo vệ tính toàn vẹn.
Thiết lập tính năng tự động bảo vệ
Dưới đây là các bước mô tả việc bạn cần làm để bắt đầu sử dụng tính năng tự động bảo vệ. Hãy nhấp vào một phần để mở rộng.
Nếu bạn bật tính năng tự động bảo vệ cho một ứng dụng cụ thể, thì Google Play sẽ tự động thêm tính năng bảo vệ mỗi khi bạn tạo một bản phát hành sẵn sàng phân phối đến các thiết bị. Tính năng bảo vệ yêu cầu Google Play phải tạo APK đã sửa đổi và ký APK đó thay mặt bạn nên bạn phải:
- Sử dụng Tính năng ký ứng dụng của Play.
- Xuất bản bằng Android App Bundle.
- Nhắm đến API có cấp độ tối thiểu là 23 trở lên.
Hãy lưu ý những hạn chế sau:
- Tính năng tự động bảo vệ chỉ được hỗ trợ trên Android 6.0 Marshmallow (API cấp độ 23) trở lên. Android M được phát hành vào năm 2015 và kể từ năm 2023 sẽ nhắm đến midSDKVersion từ 23 trở lên trên 97% số thiết bị Android đang hoạt động.
- Tính năng tự động bảo vệ vẹn hỗ trợ các ABI sau: x86, x86_64, armeabi-v7a và arm64-v8a. Để cập nhật các ABI mà ứng dụng nhắm đến, hãy cập nhật chế độ cài đặt Gradle. Những ABI khác không được thiết bị Android đang hoạt động sử dụng có thể bị xoá khỏi tiêu chí nhắm mục tiêu của bạn mà không ảnh hưởng đến sự hiện diện của ứng dụng.
- Tính năng tự động bảo vệ vẫn hoạt động khi không kết nối mạng. Tuy nhiên, chế độ "Yêu cầu cài đặt qua Google Play" cần phải có kết nối dữ liệu định kỳ nếu ứng dụng Cửa hàng Play trên thiết bị không kết nối mạng trong thời gian dài.
- Nếu ứng dụng của bạn đang sử dụng dịch vụ Cấp phép của Play, bạn nên tắt chế độ "Yêu cầu cài đặt qua Google Play".
- Khi tải ứng dụng lên tính năng chia sẻ ứng dụng nội bộ, tính năng bảo vệ sẽ không hoạt động. Hãy đảm bảo rằng bạn chỉ chia sẻ đường liên kết chia sẻ ứng dụng nội bộ với những thành viên tin cậy trong nhóm và nhớ đừng chia sẻ phiên bản không được bảo vệ ra bên ngoài.
- Tính năng tự động bảo vệ không tương thích với cơ chế minh bạch mã cho gói ứng dụng do tính năng bảo vệ tính toàn vẹn có thực hiện việc sửa đổi mã. Hệ thống sẽ từ chối những gói ứng dụng tải lên bằng cơ chế minh bạch mã khi tính năng tự động bảo vệ đang được bật.
- Trải nghiệm tức thì không được bảo vệ. Nếu muốn được bảo vệ, bạn không được hỗ trợ phiên bản tức thì trong gói ứng dụng trên các kênh phát hành của mình. Bạn có thể tải đồng thời một gói ứng dụng lên các kênh phát hành được bảo vệ và một gói ứng dụng có hỗ trợ phiên bản tức thì lên kênh chỉ dành cho phiên bản tức thì (không được bảo vệ).
Tạo một bản phát hành như mô tả trong Bước 1 của bài viết Chuẩn bị và ra mắt bản phát hành.
Bạn có thể bật tính năng bảo vệ khi tạo bản phát hành (như mô tả trong Bước 2 của bài viết Chuẩn bị và ra mắt bản phát hành) hoặc bạn có thể bật tính năng bảo vệ trên trang Tính toàn vẹn của ứng dụng (
Kiểm thử và phát hành
> Tính toàn vẹn của ứng dụng), trong đó có dịch vụ ký và bảo vệ tính toàn vẹn để bạn chắc chắn rằng người dùng trải nghiệm ứng dụng và trò chơi của bạn theo đúng cách bạn mong muốn.Khi chuẩn bị bản phát hành, bạn sẽ thấy một nút có nội dung Bật tính năng bảo vệ tính toàn vẹn hoặc Quản lý dịch vụ bảo vệ tính toàn vẹn. Sau đó, bạn có thể bật tính năng bảo vệ tính toàn vẹn bằng cách nhấp vào Có, bật trong phần "Tính năng tự động bảo vệ". Google Play sẽ ký các bản phát hành của bạn và thêm tính năng bảo vệ tính toàn vẹn để hạn chế hành vi can thiệp và phân phối trái phép. Điều này có nghĩa là tính năng tự động bảo vệ đã được bật.
Hoàn tất việc chuẩn bị bản phát hành và lưu các thay đổi của bạn.
Sử dụng từng kênh kiểm thử để kiểm thử phiên bản ứng dụng được bảo vệ nhằm đảm bảo không có tác động không mong muốn đến trải nghiệm người dùng hoặc hiệu suất của ứng dụng.
Bạn nên thực hiện các hành động sau đây trong quá trình kiểm tra:
- Kiểm thử việc khởi chạy trò chơi của bạn, tìm xem ứng dụng có sự cố hay bị chậm trong thời gian khởi chạy không.
- Kiểm thử các thời điểm khi lệnh gọi trong mã gốc của bạn (C/C++) chuyển về Java (trong đoạn mã của riêng bạn hoặc thư viện của bên thứ ba), chẳng hạn như quảng cáo, ghi nhật ký và tích hợp mạng xã hội, xác thực hoặc các tính năng dành riêng cho Android như xử lý quyền.
Nếu gặp vấn đề trong quá trình kiểm thử, bạn có thể quay lại phiên bản tính năng tự động bảo vệ trước đó (có thể đã sử dụng trong bản phát hành trước) hoặc bạn có thể tắt tính năng tự động bảo vệ. Bạn không nên quảng bá phiên bản không được bảo vệ lên những kênh kiểm thử mở hoặc kênh phát hành chính thức.
Cách tắt tính năng bảo vệ tính toàn vẹn cho từng bản phát hành:
- Khi chuẩn bị bản phát hành, hãy nhấp vào Quản lý dịch vụ bảo vệ tính toàn vẹn.
- Trong phần "Tính năng tự động bảo vệ", hãy chọn Phiên bản tính năng bảo vệ trước đó hoặc Tắt tính năng bảo vệ cho bản phát hành này.
- Lưu thay đổi. Các thay đổi sẽ được áp dụng cho bản phát hành này. Lần tới khi bạn tải một bản phát hành lên, bản phát hành đó sẽ nhận được tính năng bảo vệ phiên bản mới nhất và mạnh nhất.
Khi sẵn sàng, bạn có thể ra mắt bản phát hành lên kênh phát hành công khai trong Play Console để phân phối ứng dụng được bảo vệ cho tất cả người dùng Google Play ở những quốc gia mà bạn chọn.
Tuỳ chỉnh trang thông tin trên Cửa hàng Play khi người dùng truy cập qua hộp thoại bảo vệ tính toàn vẹn
Tính năng tự động bảo vệ có thể nhắc những người cài đặt ứng dụng của bạn theo cách không chính thống về việc tải xuống trên Google Play. Khi người dùng nhấn vào hộp thoại đó, họ sẽ được chuyển hướng đến trang thông tin của bạn trên Cửa hàng Play. Tại đây, họ có thể nhấn vào nút cài đặt (hoặc mua/cập nhật) để tải ứng dụng của bạn xuống qua Play và thêm ứng dụng này vào thư viện Play của mình.
Bạn có thể tuỳ chỉnh các thành phần tại trang thông tin trên Cửa hàng Play cho bất kỳ khách truy cập nào nhấn vào hộp thoại bảo vệ tính toàn vẹn, chẳng hạn như tên, biểu tượng, nội dung mô tả và thành phần đồ hoạ của ứng dụng. Cách tuỳ chỉnh trang thông tin của bạn trên Cửa hàng Play khi người dùng truy cập qua một hộp thoại bảo vệ tính toàn vẹn:
- Mở Play Console rồi chuyển đến trang Tính toàn vẹn của ứng dụng (
Kiểm thử và phát hành
> Tính toàn vẹn của ứng dụng). - Di chuyển đến mục "API Tính toàn vẹn của Play".
- Nhấp vào Cài đặt.
- Di chuyển xuống phần "Tuỳ chỉnh trang thông tin trên Cửa hàng Play".
- Nhấp vào Tạo trang thông tin.
- Làm theo hướng dẫn trên trang Tạo trang thông tin tuỳ chỉnh trên Cửa hàng Play rồi nhấp vào Lưu.
Ngoài ra, bạn có thể tạo trang thông tin tuỳ chỉnh trên Cửa hàng Play cho hộp thoại bảo vệ tính toàn vẹn ngay trên trang Trang thông tin tuỳ chỉnh trên Cửa hàng Play:
- Mở Play Console và chuyển đến trang Trang thông tin tuỳ chỉnh trên Cửa hàng Play (Tăng lượng người dùng > Trang thông tin tuỳ chỉnh trên Cửa hàng Play).
- Nhấp vào Tạo trang thông tin, chọn tạo trang thông tin mới hoặc tạo bản sao của một trang thông tin hiện có, rồi nhấp vào Tiếp theo.
- Trong phần "Chi tiết trên trang thông tin", hãy di chuyển đến mục Đối tượng mục tiêu.
- Chọn Theo URL rồi nhập "playintegrity" vào hộp văn bản.
- Điền tất cả thông tin khác rồi nhấp vào Lưu.
Lưu ý: Tham số URL "playintegrity" là một từ khoá đặc biệt dành riêng cho đường liên kết sâu về tính toàn vẹn. Vì vậy, bạn phải nhập chính xác tham số này và không được thay đổi gì khi thiết lập trang thông tin tuỳ chỉnh trên Cửa hàng Play.
Những phương pháp được đề xuất
Đừng phát hành phiên bản ứng dụng chưa được bảo vệ
Nếu bạn phát hành phiên bản không được bảo vệ lên kênh kiểm thử công khai hoặc thông qua các kênh khác bên ngoài Google Play, thì tính năng bảo vệ của ứng dụng sẽ không còn hoạt động nữa. Để duy trì tính năng bảo vệ tính toàn vẹn của ứng dụng, bạn chỉ nên phát hành phiên bản được bảo vệ của ứng dụng lên kênh kiểm thử công khai và kênh phát hành công khai.
Cẩn thận khi kết hợp các giải pháp bảo vệ chống giả mạo
Tính năng tự động bảo vệ có thể không tương thích với một số giải pháp chống giả mạo trong lúc chạy khác và việc kết hợp những giải pháp như vậy có thể gây ra vấn đề cho người dùng. Nếu đã triển khai dịch vụ Cấp phép của Play trong ứng dụng thì bạn nên tắt chế độ "Yêu cầu cài đặt qua Google Play". Nếu ứng dụng của bạn triển khai các quá trình kiểm tra khác trong thời gian chạy, hãy nhớ kiểm thử ứng dụng thật cẩn thận để xem có vấn đề không trước khi phát hành lên các kênh công khai.
Kiểm thử ứng dụng được bảo vệ
Google Play sẽ tự động phân phối các bản dựng được bảo vệ lên mọi kênh: kiểm thử nội bộ, kiểm thử khép kín, kiểm thử công khai và phát hành công khai. Bạn nên kiểm thử kỹ lưỡng các phiên bản này như thường lệ.
Nếu bạn tải trực tiếp bản dựng của ứng dụng lên tính năng chia sẻ ứng dụng nội bộ, thì Google Play sẽ không thêm tính năng bảo vệ. Việc này nhằm cho phép bạn sử dụng tính năng chia sẻ ứng dụng nội bộ để tải bản gỡ lỗi và các bản dựng tương tự khác lên.
Khi bạn truy cập đường liên kết chia sẻ ứng dụng nội bộ cho một phiên bản ứng dụng được bảo vệ trên trình khám phá gói ứng dụng, thì bản dựng đó sẽ được chia sẻ chính xác vì Google Play đã xử lý bản dựng. Nếu phiên bản ứng dụng đó được tải lên một kênh thử nghiệm và được bảo vệ, thì đường liên kết chia sẻ ứng dụng nội bộ trên trình khám phá gói ứng dụng sẽ phân phối phiên bản được bảo vệ. Bạn có thể xem trạng thái bảo vệ trên thẻ Chi tiết của trình khám phá gói ứng dụng.
Giám sát sự cố
Bạn có thể nhận thấy số lượng sự cố gia tăng (một chức năng của ứng dụng được bảo vệ). Điều này có thể cho thấy rằng tính năng tự động bảo vệ đang hoạt động như dự kiến. Nếu kẻ tấn công không sửa đổi được ứng dụng của bạn, thì quy trình kiểm tra thời gian chạy sẽ ngăn ứng dụng chạy, chủ yếu là bằng cách làm ứng dụng gặp sự cố.
Các sự cố không phải do lỗi của Google Play sẽ không ảnh hưởng đến chỉ số về mức độ ổn định của Android vitals. Nếu bạn đang dùng các công cụ khác để phân tích sự cố (chẳng hạn như Crashlytics) và cần tên gói để lọc theo nguồn cài đặt, thì tên gói của Cửa hàng Google Play là "com.android.vending".
Nếu lo lắng về việc số sự cố gia tăng sẽ gây ảnh hưởng bất lợi thì bạn có thể báo cáo cho chúng tôi chi tiết nhất có thể để nhóm phụ trách của chúng tôi tìm hiểu. Chúng tôi sẽ phản hồi báo cáo của bạn nếu nhận thấy các sự cố đó có liên quan đến tính năng bảo vệ.
Báo cáo các phiên bản bị bẻ khoá của ứng dụng
Phiên bản bị bẻ khoá là phiên bản ứng dụng vẫn hoạt động khi bị sửa đổi hoặc khi được cài đặt bên ngoài Google Play nếu bạn yêu cầu phải cài đặt qua Google Play.
Nếu phát hiện một phiên bản bị bẻ khoá của ứng dụng, bạn có thể báo cáo cho chúng tôi.
Cải thiện tính năng bảo vệ chống giả mạo
Việc chia sẻ với Google Play dữ liệu đo từ xa về ứng dụng (chẳng hạn như dữ liệu hiệu suất và môi trường được ẩn danh) giúp chúng tôi cải thiện khả năng phục hồi và hiệu suất của tính năng bảo vệ chống giả mạo. Bạn có thể chọn không chia sẻ dữ liệu đo từ xa của ứng dụng bằng cách tắt chế độ "Chia sẻ với Google dữ liệu đo từ xa về ứng dụng" trên trang Cài đặt tính năng tự động bảo vệ (
Kiểm thử và phát hành
> Tính toàn vẹn của ứng dụng rồi di chuyển xuống Tự động bảo vệ). Tìm hiểu thêm về cách dữ liệu được dùng để phát triển các dịch vụ của Google.