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 Google Play được quản lý.

Cài đặt ứng dụng

Bạn có thể cài đặt các ứng dụng Android từ Cửa hàng Google Play trên các thiết bị bằng cách sử dụ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à bạn muốn cài đặt. Để tìm tên gói của ứng dụng, bạn có 2 lựa chọn:

  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 là com.android.chrome.

  2. Bạn có thể nhúng iframe Google Play Managed vào bảng điều khiển EMM của mình để cho phép khách hàng duyệt qua 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 này trong 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 Google Play được quản lý trên thiết bị.

Phân phối ứng dụng cho kiểm thử 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ử. Quá trình này được gọi là kiểm thử khép kín. Việc hỗ trợ phân phối trên kênh khép kín cho phép các tổ chức kiểm thử các ứ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 được nhắm mục tiêu đến một doanh nghiệp và phân phối các kênh kiểm thử khép kín này cho các thiết bị bằng cách sử dụ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 rằng ứng dụng của họ đáp ứng các yêu cầu sau:

  • Một 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, Managed Google Play sẽ được bật 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 thử nghiệm 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ủa bạn có thể tìm Mã tổ chức của họ theo hướng dẫn sau:

  1. Đăng nhập vào Managed Google Play (Google Play được quản lý) bằng tài khoản quản trị viên.
  2. Nhấp vào mục Cài đặt quản trị viên.
  3. Sao chép chuỗi mã tổ chức trong hộp Thông tin về tổ chức và gửi mã đó 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 trong thẻ Managed Google Play trên trang Cài đặt nâng cao của ứng dụng. Để biết hướng dẫn, hãy xem phần Xuất bản ứng dụng riêng tư qua Play Console.

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

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

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

Để cài đặt mộ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 từ 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.

TrackId sẽ tự động bị xoá khỏi lệnh gọi enterprises.applications trong một số trường hợp, 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 bằng một phiên bản cao hơn kênh phát hành.
  • Một nhà phát triển sẽ dừng kênh.

iframe Managed Google Play

Với iframe Google Play Managed, 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 để cung cấp cho khách hàng trải nghiệm quản lý di động hợp nhất.

iframe Managed-play
Hình 1. iframe trên Managed Google Play

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

  • Tìm kiếm ứng dụng: Cho phép quản trị viên CNTT tìm kiếm và duyệt qua các ứng dụng trên Google Play, xem thông tin chi tiết về ứng dụng và 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ý các ứ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 xuất bản và phân phối các lối tắt trên 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ó sẵn 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 bài viết 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 của bạ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 giúp nhận dạng doanh nghiệp đó. Phản hồi 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 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ả 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 một iframe bên trong vùng chứa div. Bạn có thể đặt các thuộc tính á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 tham số hiện có 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 hiển thị khi iframe được hiển thị. Các giá trị có thể là PLAY_SEARCH, WEB_APPS, PRIVATE_APPSSTORE_BUILDER (sắp xếp ứng dụng). Nếu không được chỉ định, thứ tự ưu tiên sau đây sẽ xác định trang nào sẽ hiển thị: 1. PLAY_SEARCH, 2. PRIVATE_APPS, 3. WEB_APPS, 4. STORE_BUILDER.
locale Không áp dụng Không Một thẻ ngôn ngữ BCP 47 có định dạng hợp lệ, 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.
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 cụm từ tìm kiếm từ bên trong iframe.
FALSE: thì hộp tìm kiếm sẽ không xuất hiện.
search Tìm kiếm ứng dụng Không Chuỗi tìm kiếm. Nếu được chỉ định, iframe sẽ hướng dẫn quản trị viên CNTT đến kết quả tìm kiếm bằng chuỗi đã chỉ định.

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

Bạn cũng nên xử lý các sự kiện sau 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 cách sử dụ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 lựa chọn khác là phát hành một ứ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. Ứng dụng riêng tư chỉ được cung cấp cho doanh nghiệp bị hạn chế. Bạn vẫn có thể cài đặt các ứng dụng này bằng cách sử dụng chính sách, nhưng người dùng bên ngoài doanh nghiệp của bạn sẽ không thấy được.