Phân phối ứng dụng

Các phần sau đây sẽ cung cấp cho bạn thông tin hữu ích về việc phân phối ứng dụng trong Cửa hàng Managed Google Play.

Cài đặt ứng dụng

Bạn có thể cài đặt các ứng dụng Android qua Cửa hàng Google Play trên các thiết bị bằng chính sách này. Để sử dụng tính năng này, bạn cần biết tên gói của ứng dụng mà mình muốn cài đặt. Để tìm tên gói của ứng dụng, bạn có 2 cách:

  1. Tên gói của ứng dụng có trong URL của trang Cửa hàng Google Play. Ví dụ: URL của trang ứng dụng Google Chrome là

    https://play.google.com/store/apps/details?id=com.android.chrome
    và tên gói của trang này là com.android.chrome.

  2. Bạn có thể nhúng iframe Google Play được quản lý trong bảng điều khiển EMM để cho phép khách hàng duyệt xem Cửa hàng Google Play. Khi khách hàng chọn một ứng dụng trong iframe, bảng điều khiển EMM của bạn sẽ nhận được tên gói trong sự kiện.

Sau đó, bạn có thể thêm ứng dụng vào chính sách của thiết bị:

"applications":[
   {
      "installType":"FORCE_INSTALLED",
      "packageName":"com.android.chrome",
   },
],

Khi bạn áp dụng chính sách này cho một thiết bị, ứng dụng đó sẽ được cài đặt trên thiết bị hoặc được thêm vào Cửa hàng Managed Google Play trên thiết bị.

Phân phối ứng dụng cho thử nghiệm khép kín

Trong Play Console, nhà phát triển ứng dụng có thể tạo một bản phát hành khép kín (kênh khép kín) để kiểm thử các phiên bản phát hành trước của ứng dụng với một nhóm người kiểm thử. Tình trạng này được gọi là kiểm thử khép kín. Việc hỗ trợ hoạt động phân phối trên kênh khép kín cho phép các tổ chức thử nghiệm ứng dụng bên thứ ba, cũng như mọi ứng dụng riêng tư mà họ phát triển nội bộ.

Khi thiết lập kiểm thử khép kín trong Play Console, nhà phát triển ứng dụng có thể nhắm đến tối đa 100 tổ chức (enterprises). Bạn có thể sử dụng Android Management API để truy xuất các kênh kiểm thử khép kín nhắm đến một doanh nghiệp và phân phối các kênh khép kín này cho các thiết bị bằng chính sách.

Ứng dụng đủ điều kiện tham gia thử nghiệm khép kín

Trước khi thiết lập kiểm thử khép kín, nhà phát triển ứng dụng phải đảm bảo ứng dụng của họ đáp ứng các yêu cầu sau:

  • Phiên bản phát hành công khai của ứng dụng được phát hành trên Google Play (hoặc Managed Google Play, đối với các ứng dụng riêng tư)
  • Trong Google Play Console, bạn có thể bật chế độ Managed Google Play (Google Play được quản lý) trên trang Cài đặt nâng cao của ứng dụng.
  • Mọi phiên bản khép kín của ứng dụng đều đáp ứng các yêu cầu về mã phiên bản.

Thêm doanh nghiệp vào kiểm thử khép kín

Khi thiết lập kiểm thử khép kín, nhà phát triển ứng dụng có thể cấp cho tổ chức quyền truy cập vào kiểm thử khép kín bằng cách thêm Mã tổ chức của họ. Khách hàng có thể tìm thấy Mã tổ chức của họ bằng cách làm theo hướng dẫn sau:

  1. Đăng nhập vào Managed Google Play bằng tài khoản quản trị viên.
  2. Nhấp vào Cài đặt quản trị viên.
  3. Sao chép chuỗi mã tổ chức từ hộp Thông tin tổ chức rồi gửi cho nhà phát triển.

Đối với các ứng dụng riêng tư, nhà phát triển cũng cần thêm mã tổ chức của từng doanh nghiệp tham gia vào thẻ Managed Google Play (Google Play được quản lý) trên trang Cài đặt nâng cao của ứng dụng. Để biết hướng dẫn, hãy xem nội dung Phát hành ứng dụng riêng tư qua Play Console.

Phân phối kênh kiểm thử khép kín cho người dùng

Để truy xuất danh sách kênh có sẵn cho doanh nghiệp trong một ứng dụng cụ thể, hãy gọi enterprises.applications. Danh sách appTrackInfo[] trong phản hồi chứa những nội dung sau đây cho các ứng dụng nhất định:

  • trackId: Giá trị nhận dạng duy nhất của kênh, được lấy từ releaseTrackId trong URL của trang trong Play Console hiện thông tin về kênh của ứng dụng.
  • trackAlias: Tên của kênh mà con người có thể đọc được và có thể sửa đổi trong Play Console.

Để cài đặt kênh khép kín trên thiết bị của người dùng, hãy chỉ định accessibleTrackIds trong chính sách của thiết bị:

"applications":[
   {
      "installType":"AVAILABLE",
      "packageName":"com.google.android.gm",
      "accessibleTrackIds":[
          "123456",
          "789101"
       ]
   },
],

Nếu một chính sách chứa nhiều kênh thuộc cùng một ứng dụng (như trong ví dụ ở trên), thì chính sách đó sẽ cài đặt kênh có mã phiên bản cao nhất.

Mã theo dõi sẽ tự động bị xoá khỏi lệnh gọi enterprises.applications trong một số trường hợp nhất định, chẳng hạn như sau:

  • APK của kênh được quảng bá lên một kênh khác hoặc lên kênh phát hành công khai.
  • Phiên bản phát hành công khai được cập nhật lên một phiên bản cao hơn phiên bản của kênh.
  • Một nhà phát triển cho dừng kênh này.

Iframe Managed Google Play

Với iframe Google Play được quản lý, bạn có thể nhúng Managed Google Play trực tiếp vào bảng điều khiển EMM của mình để mang đến cho khách hàng trải nghiệm quản lý tính di động hợp nhất.

Managed-play-iframe
Hình 1. Iframe Managed Google Play

iframe chứa thanh tiêu đề và trình đơn bên có thể mở rộng. Trên trình đơn, người dùng có thể chuyển đến nhiều trang:

  • Tìm kiếm ứng dụng: Cho phép quản trị viên CNTT tìm kiếm và duyệt qua ứng dụng trên Google Play, xem thông tin chi tiết về ứng dụng cũng như chọn ứng dụng.
  • Ứng dụng riêng tư: Cho phép quản trị viên CNTT phát hành và quản lý ứng dụng riêng tư cho doanh nghiệp của họ.
  • Ứng dụng web: Cho phép quản trị viên CNTT phát hành và phân phối lối tắt trang web dưới dạng ứng dụng.
  • Sắp xếp ứng dụng: Cho phép quản trị viên CNTT định cấu hình cách sắp xếp ứng dụng trong ứng dụng Cửa hàng Play trên thiết bị của người dùng.

Tính năng

Phần này mô tả các tính năng có trong iframe Managed Google Play. Để biết thông tin về cách nhúng iframe và triển khai các tính năng này, hãy xem phần Thêm iframe vào bảng điều khiển của bạn.


Thêm iframe vào bảng điều khiển

Bước 1. Tạo mã thông báo web

Gọi enterprises.webTokens.create để tạo mã thông báo web xác định doanh nghiệp. Phản hồi này chứa value của mã thông báo.

  • Đặt parentFrameUrl thành URL của khung gốc lưu trữ iframe.
  • Sử dụng iframeFeature để chỉ định tính năng nào cần bật trong iframe: PLAY_SEARCH, PRIVATE_APPS, WEB_APPS, STORE_BUILDER (sắp xếp ứng dụng). Nếu bạn không đặt iframeFeature, thì iframe sẽ bật tất cả các tính năng theo mặc định.

Bước 2. Hiển thị iframe

Dưới đây là ví dụ về cách hiển thị iframe Managed Google Play:

<script src="https://apis.google.com/js/api.js"></script>
<div id="container"></div>
<script>
  gapi.load('gapi.iframes', function() {
    var options = {
      'url': 'https://play.google.com/work/embedded/search?token=web_token&mode=SELECT',
      'where': document.getElementById('container'),
      'attributes': { style: 'width: 600px; height:1000px', scrolling: 'yes'}
    }

    var iframe = gapi.iframes.getContext().openChild(options);
  });
</script>

Mã này tạo ra một iframe bên trong vùng chứa div. Bạn có thể thiết lập các thuộc tính sẽ áp dụng cho thẻ iframe bằng tuỳ chọn "thuộc tính", như đã đề cập trước đó.

Tham số URL

Bảng dưới đây liệt kê tất cả các thông số có sẵn cho iframe mà bạn có thể thêm vào URL dưới dạng tham số URL, ví dụ:

'url': 'https://play.google.com/work/embedded/search?token=web_token&mode=SELECT&showsearchbox=TRUE',
Thông số Trang Bắt buộc Nội dung mô tả
token Không áp dụng Mã thông báo được trả về từ Bước 1.
iframehomepage Không áp dụng Không Trang đầu tiên xuất hiện khi iframe được kết xuất. Các giá trị có thể là PLAY_SEARCH, WEB_APPS, PRIVATE_APPSSTORE_BUILDER (sắp xếp ứng dụng). Nếu bạn không chỉ định, thứ tự ưu tiên sau đây sẽ xác định trang nào được hiển thị: 1. PLAY_SEARCH, 2. PRIVATE_APPS, 3. WEB_APPS, 4. STORE_BUILDER.
locale Không áp dụng Không Thẻ ngôn ngữ BCP 47 được định dạng đúng, dùng để bản địa hoá nội dung trong iframe. Nếu không được chỉ định, giá trị mặc định sẽ là en_US.
mode Tìm kiếm ứng dụng Không SELECT: cho phép quản trị viên CNTT chọn ứng dụng.
APPROVE (mặc định): cho phép quản trị viên CNTT chọn, phê duyệt và huỷ phê duyệt ứng dụng. Chế độ này không được dùng nữa, hãy dùng SELECT. Chế độ APPROVE chỉ hoạt động nếu bạn đặt PlaySearch.ApproveApps thành true trong mã thông báo web.
showsearchbox Tìm kiếm ứng dụng Không TRUE (mặc định): hiển thị hộp tìm kiếm và bắt đầu truy vấn tìm kiếm từ bên trong iframe.
FALSE: hộp tìm kiếm không được hiển thị.
search Tìm kiếm ứng dụng Không Chuỗi tìm kiếm. Nếu được chỉ định, iframe này sẽ chuyển hướng quản trị viên CNTT đến các kết quả tìm kiếm có chuỗi được chỉ định.

Bước 3. Xử lý các sự kiện trong iframe

Bạn cũng nên xử lý các sự kiện sau đây trong quá trình tích hợp.

Sự kiệnNội dung mô tả
onproductselect Người dùng chọn hoặc phê duyệt một ứng dụng. Thao tác này sẽ trả về một đối tượng chứa:
{
    "packageName": The package name of the app, e.g. "com.google.android.gm",
    "productId": The product ID of the app, e.g. "app:com.google.android.gm",
    "action": The type of action performed on the document. Possible values are:
    "approved", "unapproved" or "selected." If you implement the iframe in SELECT
    mode, the only possible value is "selected".
}
    
Mẫu bên dưới cho biết cách theo dõi onproductselect:
iframe.register('onproductselect', function(event) {
  console.log(event);
}, gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER);


Tải ứng dụng của riêng bạn lên Cửa hàng Google Play

Nếu bạn hoặc khách hàng của bạn phát triển một ứng dụng Android, thì bạn có thể tải ứng dụng đó lên Cửa hàng Play bằng Google Play Console.

Nếu không muốn ứng dụng xuất hiện công khai trên Cửa hàng Play, bạn có thể hạn chế ứng dụng của mình cho một doanh nghiệp duy nhất bằng cách sử dụng Google Play Console. Một cách khác là phát hành ứng dụng riêng tư theo phương thức lập trình bằng API phát hành ứng dụng tuỳ chỉnh của Google Play. Các ứng dụng riêng tư chỉ dành cho doanh nghiệp mà ứng dụng bị hạn chế. Các ứng dụng này vẫn có thể được cài đặt bằng chính sách, nhưng người dùng bên ngoài doanh nghiệp sẽ không nhìn thấy các tệp này.