Hướng dẫn cho nhà phát triển

Các tính năng của Android dành cho doanh nghiệp mang đến cho tổ chức một giải pháp bảo mật, linh hoạt và nền tảng di động Android hợp nhất—kết hợp các thiết bị, ứng dụng, và quản lý chiến dịch. Ứng dụng Android tương thích với các tính năng của Android dành cho doanh nghiệp theo mặc định. Tuy nhiên, bạn có thể sử dụng các tính năng bổ sung để ứng dụng của bạn hoạt động tốt nhất trên các thiết bị Android được quản lý:

Điều kiện tiên quyết

  1. Bạn đã tạo một ứng dụng Android.
  2. Bạn đã sẵn sàng sửa đổi ứng dụng của mình sao cho phù hợp nhất với tổ chức.
  3. Phiên bản tối thiểu: Phiên bản được đề xuất của Android 5.0 Lollipop: Android 6.0 (Marshmallow) trở lên.

Lưu ý: Các tính năng của Android dành cho doanh nghiệp được tích hợp vào hầu hết các tính năng Thiết bị chạy Android 5.0; tuy nhiên, Android 6.0 trở lên cung cấp các tính năng bổ sung, đặc biệt là trên các thiết bị chuyên dụng.

Hồ sơ công việc

Bạn có thể quản lý ứng dụng và dữ liệu doanh nghiệp của người dùng thông qua hồ sơ công việc. Hồ sơ công việc là một hồ sơ công ty được quản lý được liên kết với tài khoản người dùng chính trên thiết bị Android. Đáp hồ sơ công việc tách biệt dữ liệu và ứng dụng công việc khỏi ứng dụng cá nhân một cách an toàn và dữ liệu. Hồ sơ công việc này nằm trong vùng chứa riêng biệt với hồ sơ cá nhân mà người dùng của bạn kiểm soát. Các hồ sơ riêng biệt này cho phép các tổ chức quản lý dữ liệu doanh nghiệp mà họ quan tâm, nhưng để mọi thứ khác trên thiết bị của người dùng thuộc quyền kiểm soát của người dùng. Để tìm hiểu sâu hơn về các phương pháp hay nhất, hãy xem Hồ sơ công việc của chúng tôi. Để biết thông tin tổng quan về những phương pháp hay nhất đó, hãy xem phần bên dưới.

Các tính năng chính của hồ sơ công việc

  • Hồ sơ riêng biệt và bảo mật
  • Managed Google Play dành cho phân phối ứng dụng
  • Ứng dụng công việc có huy hiệu riêng biệt
  • Khả năng quản lý chỉ có hồ sơ do quản trị viên kiểm soát

Lợi ích của hồ sơ công việc trên Android 5.0 trở lên

Những điều cần cân nhắc đối với hồ sơ công việc

Ngăn ý định không hoạt động giữa các hồ sơ

Khó biết được ý định nào có thể trao đổi giữa các hồ sơ và những đường liên kết nào bị chặn. Cách duy nhất để biết chắc chắn là thử nghiệm. Trước khi ứng dụng của bạn bắt đầu một hoạt động, bạn nên xác minh rằng được giải quyết bằng cách gọi Intent.resolveActivity().

  • Nếu trả về null, thì yêu cầu không giải quyết được.
  • Nếu trả về giá trị nào đó, thì tức là ý định đã được phân giải, và có thể gửi ý định một cách an toàn.

Lưu ý: Để biết hướng dẫn chi tiết về cách kiểm thử, hãy xem Ngăn chặn ý định không thành công.

Chia sẻ các tệp giữa nhiều hồ sơ

Một số nhà phát triển sử dụng URI để đánh dấu đường dẫn tệp trong Android. Tuy nhiên, vì có các hệ thống tệp riêng biệt khi có hồ sơ công việc, nên chúng tôi đề xuất:

Sử dụng:
URI nội dung
  • URI nội dung chứa quyền hạn, đường dẫn và mã nhận dạng cho một tệp cụ thể. Bạn có thể tạo mã này bằng cách sử dụng Lớp con FileProvider. Tìm hiểu thêm
  • Chia sẻ và cấp quyền truy cập URI nội dung bằng cách sử dụng ý định. Quyền chỉ có thể được chuyển qua hồ sơ bằng cách sử dụng Ý định. Nếu bạn cấp quyền truy cập cho một ứng dụng khác vào tệp của bạn bằng Context.grantUriPermission(), chỉ cấp cho ứng dụng đó trong cùng một hồ sơ.
Không sử dụng:
URI tệp
  • Chứa đường dẫn tuyệt đối của tệp trên bộ nhớ.
  • URI đường dẫn tệp hợp lệ trên một hồ sơ sẽ không hợp lệ vào ứng dụng khác.
  • Nếu bạn đính kèm URI tệp vào một ý định, thì trình xử lý không thể để truy cập tệp trong cấu hình khác.

Các bước tiếp theo: Sau khi ứng dụng của bạn hỗ trợ tính năng được quản lý hồ sơ công việc, hãy kiểm tra nó trong hồ sơ công việc. Xem bài viết Kiểm thử ứng dụng.

Triển khai cấu hình được quản lý

Cấu hình được quản lý là một tập hợp các hướng dẫn mà quản trị viên CNTT có thể sử dụng để quản lý thiết bị di động của người dùng theo một cách cụ thể. Những hướng dẫn này là phổ biến và hoạt động trên mọi EMM, cho phép quản trị viên định cấu hình từ xa các ứng dụng trên trang web của người dùng điện thoại.

Nếu đang phát triển các ứng dụng dành cho doanh nghiệp hoặc chính phủ, có thể bạn cần nhằm đáp ứng bộ yêu cầu cụ thể trong ngành của bạn. Sử dụng cấu hình được quản lý, thì quản trị viên CNTT có thể chỉ định từ xa cài đặt và thực thi chính sách cho ứng dụng Android của người dùng; với ví dụ:

  • Định cấu hình xem ứng dụng có thể đồng bộ hoá dữ liệu qua mạng di động/3G hay chỉ Wi-Fi
  • Cho phép hoặc chặn URL trên trình duyệt web
  • Định cấu hình chế độ cài đặt email của một ứng dụng
  • Bật hoặc tắt tính năng in
  • Quản lý dấu trang

Các phương pháp hay nhất để triển khai cấu hình được quản lý

Thiết lập cấu hình được quản lý hướng dẫn là nguồn thông tin chính về cách xây dựng và triển khai cấu hình được quản lý. Sau khi bạn xem tài liệu này, hãy xem bên dưới để xem thêm hướng dẫn.

Khi mở ứng dụng lần đầu tiên

Ngay khi khởi chạy một ứng dụng, bạn có thể xem liệu cấu hình đã được thiết lập cho ứng dụng này trong onStart() hoặc onResume() Ngoài ra, bạn có thể tìm hiểu xem được quản lý hoặc không được quản lý. Ví dụ: nếu getApplicationRestrictions() trả về:

  • Một nhóm các hạn chế dành riêng cho ứng dụng—Bạn có thể tự động định cấu hình các cấu hình được quản lý (mà không cần hoạt động đầu vào của người dùng).
  • Gói trống—Ứng dụng của bạn hoạt động như hệ thống không được quản lý (ví dụ: cách ứng dụng hoạt động trong ứng dụng cá nhân hồ sơ).
  • Gói có một cặp khoá-giá trị duy nhất với Đã đặt KEY_RESTRICTIONS_PENDING thành true—của bạn ứng dụng đang được quản lý nhưng DPC chưa được định cấu hình chính xác. Bạn nên chặn người dùng này khỏi ứng dụng của mình và chuyển hướng cho quản trị viên CNTT.

Theo dõi các thay đổi đối với cấu hình được quản lý

Quản trị viên CNTT có thể thay đổi cấu hình được quản lý và những dữ liệu mà họ muốn thực thi đối với người dùng của mình bất kỳ lúc nào. Vì điều này, bạn nên đảm bảo rằng ứng dụng của mình có thể chấp nhận các hạn chế đối với cấu hình được quản lý của bạn như sau:

  • Các hạn chế tìm nạp khi chạy – Ứng dụng của bạn phải gọi cho getApplicationRestrictions() tại onStart()onResume(), đồng thời so sánh với các hạn chế cũ để biết liệu bạn có cần thay đổi hay không.
  • Nghe trong khi chạy – Đăng ký động ACTION_APPLICATION_RESTRICTIONS_CHANGED trong việc chạy các hoạt động hoặc dịch vụ, sau khi bạn đã kiểm tra hạn chế. Ý định này chỉ được gửi đến trình nghe đăng ký động và không được khai báo trong ứng dụng cho trình nghe tệp kê khai.
  • Huỷ đăng ký trong khi không chạy – Trong onPause(), bạn nên huỷ đăng ký thông báo truyền tin ACTION_APPLICATION_RESTRICTIONS_CHANGED.

Thiết bị chuyên dụng

Thiết bị chuyên dụng là các thiết bị kiosk được sử dụng cho một mục đích duy nhất, chẳng hạn như hiển thị bảng hiệu kỹ thuật số, vé quầy in hoặc sổ đăng ký thanh toán.

Khi thiết bị Android được định cấu hình là thiết bị chuyên dụng, người dùng sẽ thấy một ứng dụng bị khóa trong màn hình mà không có Màn hình chính hoặc Ứng dụng gần đây để thoát khỏi ứng dụng. Bạn cũng có thể định cấu hình các thiết bị chuyên dụng để hiển thị một nhóm của các ứng dụng, chẳng hạn như kiosk thư viện với ứng dụng dành cho thư viện và một trình duyệt web.

Để biết hướng dẫn, hãy xem Thiết bị chuyên dụng.

Thiết lập tính năng đăng nhập một lần bằng các Thẻ tuỳ chỉnh của Chrome

Người dùng doanh nghiệp thường có nhiều ứng dụng trên thiết bị và các ứng dụng đó muốn đăng nhập một lần để truy cập vào tất cả các ứng dụng công việc của họ. Thông thường, người dùng đăng nhập qua WebView; tuy nhiên, có một vài lý do khiến điều này không lý tưởng:

  1. Người dùng thường cần đăng nhập nhiều lần bằng cùng một thông tin xác thực. Giải pháp WebView thường không phải là một giải pháp thực sự trải nghiệm đăng nhập (SSO).
  2. Có thể có các rủi ro về bảo mật, bao gồm cả các ứng dụng độc hại kiểm tra cookie hoặc chèn JavaScript® để truy cập vào thông tin xác thực. Ngay cả các nhà phát triển đáng tin cậy cũng gặp rủi ro nếu họ dựa vào SDK bên thứ ba có thể độc hại.

Giải pháp cho cả hai vấn đề là xác thực người dùng bằng trình duyệt Thẻ tuỳ chỉnh thay vì WebView. Điều này giúp đảm bảo rằng quá trình xác thực:

  • Xảy ra trong một ngữ cảnh an toàn (trình duyệt hệ thống) khi ứng dụng lưu trữ không thể kiểm tra nội dung.
  • Có trạng thái cookie dùng chung, đảm bảo người dùng chỉ phải đăng nhập một lần.

Yêu cầu

Thẻ tuỳ chỉnh được hỗ trợ trở lại API cấp 15 (Android 4.0.3). Để sử dụng Thẻ tuỳ chỉnh, bạn cần có một trình duyệt được hỗ trợ, chẳng hạn như Chrome. Chrome 45 trở lên triển khai tính năng này dưới dạng Thẻ tuỳ chỉnh của Chrome.

Làm cách nào để triển khai SSO với Thẻ tuỳ chỉnh?

Google đã cung cấp nguồn mở cho một thư viện ứng dụng OAuth sử dụng Các thẻ, đóng góp thẻ này vào nhóm làm việc OpenID Connect của Nền tảng ID Mở. Để thiết lập Thẻ tuỳ chỉnh cho tính năng Đăng nhập một lần (SSO) bằng Thư viện AppAuth, hãy xem tài liệu và mã mẫu trên GitHub.

Kiểm thử ứng dụng

Sau khi phát triển ứng dụng, bạn nên thử nghiệm ứng dụng đó – cả trong hồ sơ công việc và trên thiết bị được quản lý. Xem hướng dẫn bên dưới.

Sử dụng DPC để kiểm thử ứng dụng Android

Chúng tôi cung cấp ứng dụng Kiểm thử DPC để giúp nhà phát triển Android kiểm thử ứng dụng của họ trong doanh nghiệp môi trường. Khi sử dụng DPC thử nghiệm, bạn có thể đặt chính sách EMM hoặc giá trị cấu hình được quản lý trên thiết bị—như thể một tổ chức quản lý thiết bị bằng EMM. Cách cài đặt DPC kiểm thử trên thiết bị: chọn một trong các phương pháp sau:

  • Cài đặt DPC kiểm thử từ GooglePlay.
  • Tạo từ nguồn trên GitHub.

Để biết thêm thông tin về cách định cấu hình DPC thử nghiệm, hãy xem hướng dẫn bên dưới và Người dùng DPC kiểm thử Hướng dẫn.

Cung cấp hồ sơ công việc

Để thử nghiệm ứng dụng của bạn trong hồ sơ công việc, trước tiên bạn cần cấp phép hồ sơ công việc trên thiết bị bằng cách sử dụng Kiểm thử ứng dụng DPC như sau:

  1. Cài đặt DPC Kiểm thử trên thiết bị.
  2. Trong trình chạy Android, hãy nhấn vào biểu tượng ứng dụng Set up Test DPC (Thiết lập DPC kiểm thử).
  3. Làm theo hướng dẫn trên màn hình.
  4. Cài đặt ứng dụng của bạn trên thiết bị rồi kiểm thử xem ứng dụng chạy như thế nào trong hồ sơ công việc.

Android tạo một hồ sơ công việc và cài đặt một bản sao của DPC Kiểm thử trong hồ sơ công việc. Bạn sử dụng bản sao DPC Thử nghiệm có huy hiệu công việc để thiết lập các chính sách và cấu hình được quản lý trong hồ sơ công việc. Người nhận tìm hiểu thêm về cách thiết lập hồ sơ công việc cho mục đích phát triển, đọc hướng dẫn dành cho nhà phát triển Hồ sơ công việc.

Cung cấp một thiết bị được quản lý toàn diện

Các tổ chức sử dụng thiết bị được quản lý toàn diện vì có thể thực thi nhiều tính năng quản lý trên thiết bị. Để cấp phép cho một thiết bị được quản lý hoàn toàn, hãy làm theo các bước sau:

  1. Cài đặt DPC Kiểm thử trên thiết bị.
  2. Xác nhận rằng không có người dùng hoặc hồ sơ công việc nào khác trên thiết bị.
  3. Xác nhận rằng không có tài khoản nào trên thiết bị.
  4. Chạy lệnh Cầu gỡ lỗi Android (adb) sau đây trong thiết bị đầu cuối của bạn:
    adb shell dpm set-device-owner com.afwsamples.testdpc/.DeviceAdminReceiver
  5. Sau khi hoàn tất việc cấp phép cho chủ sở hữu thiết bị, bạn có thể kiểm thử ứng dụng trên thiết bị đó. Bạn nên kiểm tra cụ thể cách cấu hình được quản lýý định hoạt động trên thiết bị đó.

Bạn cũng có thể sử dụng các phương thức cấp phép khác – xem Hướng dẫn sử dụng DPC kiểm thử. Để tìm hiểu cách triển khai quản trị viên thường đăng ký và cấp phép cho các thiết bị chạy Android, hãy đọc Cấp phép thiết bị.

Kiểm thử toàn diện

Sau khi bạn hoàn tất thử nghiệm ứng dụng trong các môi trường nêu trên, có thể bạn sẽ muốn thử nghiệm ứng dụng trong quy trình sản xuất toàn diện môi trường. Quy trình này bao gồm các bước mà khách hàng cần để thực hiện để triển khai ứng dụng của bạn trong tổ chức của họ, bao gồm:

  • Phân phối ứng dụng thông qua Play
  • Cấu hình được quản lý phía máy chủ
  • Kiểm soát chính sách hồ sơ phía máy chủ

Bạn cần truy cập vào một bảng điều khiển EMM để hoàn thành toàn bộ quy trình kiểm thử. Cách dễ nhất để có được bản quyền là yêu cầu một bảng điều khiển kiểm thử từ EMM của bạn. Sau khi bạn có quyền truy cập, hãy hoàn thành những việc sau:

  1. Tạo một phiên bản kiểm thử của ứng dụng bằng ApplicationId mới.
  2. Xác nhận quyền sở hữu một miền Google được quản lý rồi liên kết miền đó với dịch vụ EMM của bạn. Nếu bạn đã có một miền thử nghiệm liên kết với dịch vụ EMM (quản lý thiết bị di động doanh nghiệp), có thể bạn cần phải huỷ liên kết để thử nghiệm với EMM mà bạn muốn. Vui lòng tham khảo ý kiến EMM cho các bước huỷ liên kết cụ thể.
  3. Xuất bản ứng dụng lên kênh riêng tư để miền do Google quản lý.
  4. Sử dụng bảng điều khiển EMM và ứng dụng EMM để:
    1. Thiết lập các thiết bị cơ quan.
    2. Phân phối ứng dụng của bạn.
    3. Đặt cấu hình được quản lý.
    4. Đặt chính sách thiết bị.

Quy trình này sẽ khác nhau dựa trên EMM của bạn. Vui lòng tham khảo ý kiến Tài liệu của EMM để biết thêm chi tiết. Xin chúc mừng! Bạn đã hoàn tất các bước này và xác minh rằng ứng dụng của bạn hoạt động tốt cho người dùng doanh nghiệp.