Mẫu nâng cao

Phần này giả định rằng bạn đã hoàn tất hướng dẫn hello world. Phần này sẽ hướng dẫn bạn chuyển đổi thành phần này thành một quá trình triển khai đầy đủ. Phần này thường liên kết đến các phần tham khảo phát triển của tài liệu này.

Thay đổi logic trong ví dụ hello world cho logic thực tế trên nhiều hồ sơ

Bạn có thể giữ nguyên mã nguồn và đừng lo lắng về các phương pháp hay nhất như khả năng kiểm thử. Hãy nhớ kiểm tra để đảm bảo tính năng này hoạt động!

Việc này bao gồm việc sửa đổi lớp trên nhiều hồ sơ, lệnh gọi trên nhiều hồ sơ và nhà cung cấp. Nếu cần Context trong phương thức nhà cung cấp hoặc hàm khởi tạo của lớp nhà cung cấp, bạn có thể thêm một Context làm tham số và SDK sẽ tự động cung cấp tham số đó.

Bạn sẽ cần quyết định xem lệnh gọi của mình sẽ là không đồng bộ hay đồng bộ. Bạn cũng cần đảm bảo rằng tất cả các tham số và kiểu dữ liệu trả về mà các lệnh gọi giữa nhiều hồ sơ sử dụng đều được hỗ trợ.

Tái cấu trúc logic để có một cấu trúc mà bạn có thể gửi

Trước tiên, hãy đọc kỹ từng đề xuất về cấu trúc để không phải thực hiện nhiều lần tái cấu trúc xung đột. Sau khi bạn lên kế hoạch cho mọi thay đổi, hãy xem lại và đánh dấu các thay đổi đó, tạo lại và kiểm thử sau mỗi lần thay đổi.

Kiểm tra kỹ quyền riêng tư và bảo mật

Kiểm tra kỹ để đảm bảo bạn không có nguy cơ lưu trữ dữ liệu trong hồ sơ không chính xác hoặc gửi dữ liệu đến máy chủ (bao gồm cả việc ghi nhật ký máy chủ) từ hồ sơ không chính xác.

  • Hãy cân nhắc chỉ định một hồ sơ làm chính để đơn giản hoá các cuộc gọi. Hãy suy nghĩ xem điều gì sẽ xảy ra nếu logic của bạn chạy trên một trong hai hồ sơ.
  • Làm mới giao diện người dùng khi tình trạng còn hàng của hồ sơ khác thay đổi.
  • Xem lại phần thảo luận về trường hợp ngoại lệ trong trường hợp bạn cần làm gì đó.
  • Nếu bạn muốn người dùng chỉ có thể sử dụng biểu tượng ứng dụng ở một trong hai hồ sơ, hãy thêm thuộc tính Tệp kê khai android:crossProfile = "true". Nhờ đó, ứng dụng mà người dùng không trực tiếp sử dụng sẽ không được uỷ quyền vào các bộ chứa chế độ chờ của ứng dụng thấp hơn.

Thêm chương trình kiểm thử

Xem tài liệu kiểm thử.

Cân nhắc việc cấp quyền

  • Nếu ứng dụng của bạn đồng ý hoàn toàn, hãy chuyển quyền của bạn từ INTERACT_ACROSS_USERS sang INTERACT_ACROSS_PROFILES rồi triển khai việc yêu cầu người dùng cấp quyền. Bạn không thể tải các ứng dụng khai báo INTERACT_ACROSS_PROFILES lên Cửa hàng Play cho đến khi ứng dụng đó có trong danh sách cho phép. Vì vậy, thay đổi tệp kê khai này phải nằm sau một cờ cho đến khi hoàn tất.

  • Nếu ứng dụng của bạn được cấp trước, bạn cũng nên làm việc này nếu muốn nhắc người dùng đã tắt tính năng này trước đó (nhưng hãy có trách nhiệm – đừng gửi thư rác cho người dùng).