iframe Google Play được quản lý

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

iframe Managed Google Play
Hình 1. Iframe Google Play được quản lý hiển thị trang Tìm kiếm ứng dụng.

Iframe chứa một thanh tiêu đề và một trình đơn bên có thể mở rộng. Trên 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 xem 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ý ứ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.

Theo mặc định, tất cả các trang đều được bật trong iframe, nhưng bạn có thể tắt từng trang một (xem phần Thêm iframe vào bảng điều khiển).


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.

Tìm kiếm ứng dụng

Trang Tìm kiếm ứng dụng (như trong Hình 1.) cho phép quản trị viên CNTT tìm kiếm, duyệt xem và chọn ứng dụng trên Google Play.

Theo mặc định, hộp tìm kiếm trong thanh tiêu đề sẽ được bật trên trang. Hộp tìm kiếm hỗ trợ các tính năng như tự động đề xuất và trả về kết quả từ các ứng dụng được đăng công khai trên Google Play. Kết quả tìm kiếm sẽ hiển thị trong iframe.

Ứng dụng riêng tư

ứng dụng riêng tư
Hình 2. Màn hình chi tiết về ứng dụng riêng tư

Trang Ứ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ư ngay trong bảng điều khiển EMM. Để đơn giản hoá việc phát hành ứng dụng riêng tư cho quản trị viên CNTT, trang này:

  • Tạo tài khoản Play Console thay mặt cho doanh nghiệp và cấp quyền quản trị cho quản trị viên CNTT.
  • Miễn phí đăng ký Play Console trị giá 25 USD trước đây là điều kiện bắt buộc để phát hành ứng dụng.
  • Chỉ yêu cầu tệp APK và tiêu đề của ứng dụng.
  • Phát hành ứng dụng chỉ trong vòng 10 phút (so với 2 giờ trong Play Console).
    Lưu ý: Bạn không thể công khai các ứng dụng được phát hành từ trang Ứng dụng riêng tư.

Trong lần đầu tiên quản trị viên CNTT phát hành ứng dụng trong iframe, iframe sẽ thay mặt doanh nghiệp tạo một tài khoản Play Console. Nếu chỉnh sửa nâng cao, họ sẽ được nhắc đăng nhập bằng Tài khoản Google. Đây có thể là bất kỳ Tài khoản Google nào (ví dụ: Gmail, Cloud Identity). Tài khoản Google này được thêm làm quản trị viên của tài khoản Play Console của doanh nghiệp. Sau đó, quản trị viên CNTT có thể sử dụng Tài khoản Google của mình để đăng nhập trực tiếp vào Play Console. Tại đây, họ có thể:

Bạn có thể xem hướng dẫn dành cho quản trị viên CNTT về cách sử dụng trang Ứng dụng riêng tư trong Trung tâm trợ giúp của Managed Google Play.

Nút chọn

Sau khi ứng dụng được phát hành, quản trị viên CNTT có thể chỉnh sửa tiêu đề và APK của ứng dụng đó trong trang chi tiết ứng dụng. Trang chi tiết ứng dụng cũng hiển thị nút SELECT (CHỌN) (xem Hình 2). Bạn cần chỉ định hành động sẽ diễn ra khi quản trị viên CNTT nhấp vào nút này (xem onproductselect trong Bước 3. Xử lý sự kiện iframe).

Ứng dụng web

ứng dụng web
Hình 3. Biểu mẫu tạo ứng dụng web.

Trang Ứng dụng web cho phép quản trị viên CNTT phát hành lối tắt trang web dưới dạng ứng dụng riêng tư lên Managed Google Play. Bạn có thể nhận dạng ứng dụng web bằng tên gói (productId) và thường mất 10 phút để phát hành. Sau khi phát hành, các ứng dụng này sẽ tự động được phê duyệt cho doanh nghiệp của họ và có thể được phân phối cho người dùng giống như mọi ứng dụng được phê duyệt khác. Ứng dụng web tương thích với các tính năng iframe được quản lý khác của Play: bạn có thể tìm kiếm các ứng dụng này trong trang Tìm kiếm của Play và thêm vào bộ sưu tập.

Biểu mẫu tạo ứng dụng web yêu cầu tên, URL HTTPS hoặc HTTP và hình ảnh biểu tượng (JPG 512 x 512 hoặc PNG 32 bit). Ngoài ra, quản trị viên CNTT có thể chọn trong số 3 tuỳ chọn hiển thị sau:

  • Toàn màn hình: Ứng dụng mở ở chế độ toàn màn hình, ẩn thanh trạng thái và thanh điều hướng của thiết bị.
  • Độc lập (mặc định): Ứng dụng hiển thị thanh trạng thái và thanh điều hướng của thiết bị.
  • Giao diện người dùng tối giản: Ứng dụng hiển thị thanh trạng thái và thanh điều hướng của thiết bị, URL của ứng dụng và tuỳ chọn làm mới. Đối với URL HTTP, đây là tuỳ chọn duy nhất.

Trang Ứng dụng web cũng cho phép quản trị viên CNTT chỉnh sửa và xoá ứng dụng web. Việc xoá một ứng dụng web sẽ xoá ứng dụng đó khỏi Cửa hàng Google Play được quản lý của người dùng, nhưng người dùng vẫn có thể truy cập vào ứng dụng đó nếu ứng dụng đã được cài đặt trên thiết bị của họ. Để xoá một ứng dụng web khỏi thiết bị của người dùng, hãy xem phần xoá ứng dụng. Hướng dẫn dành cho người dùng về cách tạo và chỉnh sửa ứng dụng web có trong Trung tâm trợ giúp của Managed Google Play.

Nút chọn

Sau khi một ứng dụng web được xuất bản, trang chi tiết của ứng dụng đó sẽ có một nút CHỌN. Bạn cần chỉ định hành động (ví dụ: phân phối ứng dụng) sẽ diễn ra khi quản trị viên CNTT nhấp vào nút này (xem onproductselect trong Bước 3. Xử lý sự kiện khung ẩn (iframe)).

Sắp xếp ứng dụng

sắp xếp ứng dụng
Hình 4. Khung ẩn trong Google Play được quản lý hiển thị trang Sắp xếp ứng dụng.

Trang Sắp xếp ứng dụng cho phép quản trị viên CNTT sắp xếp ứng dụng thành các bộ sưu tập (còn gọi là nhóm). Ví dụ: quản trị viên CNTT có thể tạo một bộ sưu tập Thiết yếu cho các ứng dụng thường dùng hoặc một bộ sưu tập Chi phí cho các ứng dụng liên quan đến việc theo dõi chi phí, ghi lại chuyến đi, v.v. Các bộ sưu tập sẽ xuất hiện trên trang chủ của Cửa hàng Play trên thiết bị của người dùng.

EMM phải sử dụng SELECT mode trong các tham số của URL iframe để cho phép tìm kiếm và thêm ứng dụng vào bộ sưu tập.

Trên thiết bị của người dùng, ứng dụng Cửa hàng Play chỉ hiển thị các ứng dụng trong một bộ sưu tập có sẵn cho người dùng (hoặc thiết bị). Nếu một bộ sưu tập không có ứng dụng nào mà người dùng (hoặc thiết bị) có thể sử dụng, thì bộ sưu tập đó sẽ không xuất hiện trong Cửa hàng Play.

iframe Managed Google Play
Hình 5. Bộ sưu tập ứng dụng (nhóm)
trên một thiết bị.

Quản trị viên CNTT cũng có thể chỉnh sửa, xoá và sao chép các bộ sưu tập hiện có trên trang sắp xếp ứng dụng. Bạn có thể xem hướng dẫn dành cho người dùng về cách thực hiện các thao tác này trong Trung tâm trợ giúp của Managed Google Play.


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

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

Để tạo mã thông báo web xác định doanh nghiệp, hãy gọi Enterprises.createWebToken. Ví dụ sau đây cho biết cách truy xuất mã thông báo bằng Thư viện ứng dụng API EMM của Google Play dành cho Java.

Theo mặc định, tất cả các trang trong iframe đều được bật. Khi tạo mã thông báo web, bạn có thể chỉ định(các) trang cần tắt. Ví dụ bên dưới sẽ tắt các chế độ Ứng dụng riêng tư, Ứng dụng web và Sắp xếp ứng dụng.

public AdministratorWebToken getAdministratorWebToken(
        String enterpriseId) throws IOException {
    AdministratorWebTokenSpec tokenSpec = new AdministratorWebTokenSpec();
    tokenSpec.setParent("https://my-emm-console.com");
    tokenSpec.setPlaySearch(new AdministratorWebTokenSpecPlaySearch());
    tokenSpec.setPrivateApps(new AdministratorWebTokenSpecPrivateApps().setEnabled(false));
    tokenSpec.setWebApps(new AdministratorWebTokenSpecWebApps().setEnabled(false));
    tokenSpec.setStoreBuilder(new AdministratorWebTokenSpecStoreBuilder().setEnabled(false));
    return androidEnterprise
        .enterprise()
        .createWebToken(enterpriseId, tokenSpec)
        .execute();
}

Bạn cần thêm mã thông báo được trả về cùng với các tham số khác khi hiển thị iframe trong bảng điều khiển.

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

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

<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 sẽ áp dụng cho thẻ iframe bằng tuỳ chọn "thuộc tính", như ở trên.

Thông số URL

Bảng dưới đây liệt kê tất cả các tham 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 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 ban đầu hiển thị 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 sẽ 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 cách dùng để bản địa hoá nội dung trong iframe. Nếu bạn không 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à khởi tạo truy vấn tìm kiếm từ bên trong iframe.
FALSE: hộp tìm kiếm 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ẽ chuyển hướng 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ý 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ệnMô 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 dưới đây cho thấy cách nghe onproductselect:
iframe.register('onproductselect', function(event) {
  console.log(event);
}, gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER);