Membuat tata letak toko kustom

Google Play Terkelola memungkinkan Anda mendesain dan membuat tata letak toko untuk pelanggan perusahaan. Anda dapat menyesuaikan tata letak toko dengan mengelompokkan aplikasi ke dalam cluster, menyiapkan halaman toko, dan menambahkan link cepat yang memberikan akses ke beberapa halaman dalam toko.

Semua aplikasi yang tersedia untuk pengguna akhir di Google Play Store terkelola harus disetujui oleh admin IT, disetujui untuk pengguna, dan ditambahkan ke cluster terlebih dahulu. (Lihat Menambahkan aplikasi ke tata letak toko untuk detail selengkapnya tentang proses ini).

Elemen tata letak toko

Tata letak toko biasanya terdiri dari serangkaian halaman yang ditampilkan kepada pengguna di Google Play terkelola. Setiap halaman dapat berisi satu atau beberapa grup aplikasi, yang disebut sebagai cluster. Setiap cluster berisi satu atau beberapa aplikasi.

Cluster memungkinkan Anda mengelompokkan aplikasi terkait. Misalnya, Anda dapat membuat halaman untuk aplikasi terkait pekerjaan yang berisi cluster Essentials dan cluster Getting Things Done. Cluster Essentials dapat berisi aplikasi seperti Notepad+, Google Slide, dan sebagainya. Cluster Getting Things Done dapat mencakup aplikasi seperti OneNote, Wunderlist, Any.do, dan aplikasi pelacakan, kalender, serta perencanaan rapat lainnya (lihat Gambar 1).

Saat membuat halaman, Anda juga dapat menambahkan hingga 10 link cepat di bagian atas halaman. Link cepat memungkinkan pengguna melompat ke halaman lain. Misalnya, Gambar 1 menunjukkan link cepat untuk halaman Bisnis, Komunikasi, dan Keuangan.

Gambar 1 menunjukkan beberapa elemen utama tata letak toko seperti yang terlihat di perangkat:

Layar contoh dari perangkat pengguna, yang menampilkan elemen tata letak
    toko termasuk link cepat, halaman, dan cluster aplikasi.
Gambar 1 - Contoh layar dari perangkat pengguna
  • Link cepat: Link opsional yang memberikan akses ke halaman lain. Link cepat mengambil nama halaman yang dituju.
  • Halaman: Halaman bernama dan dapat di-scroll secara vertikal yang terdiri dari cluster aplikasi.
  • Cluster (juga disebut collection): Carousel aplikasi yang dapat di-scroll secara horizontal yang bernama. Diperluas ke halaman penuh jika halaman berisi satu cluster (atau klik "Lainnya" untuk membuat halaman dapat di-scroll secara vertikal).

Batasan elemen tata letak toko

Saat mendesain dan mengimplementasikan tata letak toko untuk pelanggan Anda, perhatikan batasan berikut (sebagian besar batasan ini disebabkan oleh prinsip desain UI yang baik):

  • 100 aplikasi per cluster
  • 30 kelompok per halaman
  • 10 link cepat per halaman
  • 100 halaman per toko
  • 1.000 produk (aplikasi yang disetujui) per perusahaan

Nama cluster dan halaman yang dilokalkan

Tata letak Google Play Store terkelola mendukung nama yang dilokalkan untuk halaman toko dan cluster toko. Saat membuat halaman atau cluster, Anda perlu memberikan daftar lokalitas yang didukung, sebagai tag bahasa IETF, dan nama yang dilokalkan terkait. Jika lokalitas pengguna tidak ada dalam daftar yang didukung, sistem akan memilih kecocokan terdekat yang tersedia. Misalnya, jika en-GB tidak tersedia, sistem akan memilih en-US. Jika tidak ada kecocokan terdekat, sistem akan memilih nama depan dalam daftar.

Menambahkan aplikasi ke tata letak toko

Semua aplikasi yang ada di policy.productPolicy ditambahkan secara otomatis jika perusahaan menggunakan tata letak penyimpanan dasar. Jika perusahaan menggunakan tata letak toko kustom, aplikasi hanya ada dalam tata letak kustom dan daftar productPolicy akan ditampilkan di perangkat. Semua item yang ada di policy.productPolicy dapat ditelusuri di Play Store.

Agar pengguna akhir dapat menginstal aplikasi dari Google Play Store terkelola, aplikasi tersebut harus kompatibel dengan perangkat pengguna dan memenuhi kondisi berikut:

  • Ditambahkan ke daftar yang diizinkan pengguna (menggunakan policy.productPolicy pada resource perangkat) DAN policy.productAvailabilityPolicy ditetapkan ke WHITELIST, OR policy.productAvailabilityPolicy ditetapkan ke ALL (memungkinkan penelusuran dan penginstalan aplikasi apa pun).

Pengguna dapat menggunakan fitur penelusuran yang terdapat dalam Google Play terkelola untuk menemukan dan menginstal aplikasi apa pun yang memenuhi ketentuan ini. Namun, aplikasi hanya akan terlihat dalam tata letak toko dasar atau jika Anda telah menambahkan aplikasi ke collection/cluster.

Aplikasi yang persetujuannya dicabut

Administrator dapat membatalkan persetujuan aplikasi (mencabut persetujuannya) kapan saja. Aplikasi dengan persetujuan yang dicabut masih dapat ditambahkan ke cluster dan daftar yang diizinkan pengguna, tetapi pengguna tidak akan melihatnya atau dapat menginstalnya dari Google Play Store terkelola. Jika aplikasi yang persetujuannya dicabut disetujui kembali, aplikasi tersebut akan tersedia lagi untuk pengguna di Google Play Store terkelola.

Tata letak toko dasar

Secara default, tata letak toko dasar diaktifkan untuk setiap pelanggan Anda. Tata letak dasar memiliki 1 halaman dan 1 cluster, yang menampilkan maksimum 1.000 aplikasi. Aplikasi di halaman diurutkan berdasarkan nilai product ID. Jika Anda membuat tata letak toko kustom (dengan menyetel storeLayoutType ="custom"), tata letak penyimpanan dasar akan dinonaktifkan.

Membuat tata letak Play Store kustom

EMM dapat membuat tata letak toko kustom untuk setiap pelanggan perusahaannya. Tata letak toko kustom memungkinkan Anda menyiapkan kelompok aplikasi, menambahkan kelompok tertentu ke halaman, dan menentukan link cepat. Karena menentukan aplikasi yang membentuk setiap cluster, Anda dapat menggunakan cluster untuk mengelompokkan aplikasi terkait (misalnya, "Essentials" dan "Menyelesaikan Berbagai Hal"). Pengguna hanya akan melihat aplikasi yang izinnya telah diterima oleh admin IT.

Referensi Google Play EMM API memiliki informasi tentang resource dan metode terkait yang Anda gunakan untuk membuat tata letak toko kustom, khususnya, Storelayoutpages dan Storelayoutcluster. Langkah-langkah yang diuraikan di bagian bawah ini akan memandu Anda melihat contoh dasar.

Tugas pemrograman

Untuk membuat tata letak kustom Google Play Store terkelola untuk pelanggan, Anda harus:

  1. Buat halaman
  2. Buat satu atau beberapa cluster di dalam halaman
  3. Menyetel halaman beranda

Setidaknya, Anda harus membuat minimal satu halaman yang terdiri dari satu cluster untuk tata letak toko, dan cluster harus berisi minimal satu aplikasi. Anda juga harus menetapkan halaman beranda. Jika membuat lebih dari satu halaman, Anda memiliki opsi untuk menyetel link cepat agar ditampilkan di bagian atas setiap halaman.

Tugas pemrograman untuk membuat tata letak Play Store terkelola secara kustom dijelaskan di bawah ini, diikuti dengan contoh tata letak toko yang lengkap.

Buat halaman

Satu halaman terdiri dari satu atau beberapa cluster. Setiap cluster berisi setidaknya satu aplikasi. Halaman dibuat untuk perusahaan tertentu, jadi Anda harus memanggil operasi pada instance perusahaan tertentu (enterpriseId). Anda dapat memberikan nama dan informasi pelokalan yang mudah digunakan untuk setiap halaman, beserta daftar pageId yang dapat dijangkau pengguna dari halaman. Halaman baru dibuat dengan operasi insert (Storelayoutpages.insert) seperti yang ditampilkan di sini:

public StorePage createPage(String enterpriseId, String name)
    throws IOException {
  List<LocalizedText> names =
      ImmutableList.of(
          new LocalizedText().setLocale("en").setText(name));
  StorePage storePage = new StorePage();
  storePage.setName(names);
  return androidEnterprise.storelayoutpages()
    .insert(enterpriseId, storePage)
    .execute();
}

Membuat cluster

Cluster berisi grup aplikasi. Cluster dibuat terlebih dahulu, lalu dapat ditambahkan ke halaman. Untuk membuat cluster, panggil operasi insert Storelayoutclusters dan teruskan nilai untuk properti berikut:

  • Daftar productId yang harus dimuat cluster (misalnya, productId untuk Gmail adalah app:com.google.android.gm)
  • Nama yang mudah digunakan untuk cluster, seperti Mengirimkan Berbagai Hal
  • enterpriseId yang harus dikaitkan dengan cluster
  • pageId (untuk halaman yang harus berisi cluster)
  • Penempatan cluster di halaman (pertama, kedua, dan seterusnya)

Berikut contohnya:

private String insertCluster(String enterpriseId, String pageId, String name,
    List<String> productIds, String orderInPage) throws IOException {
  StoreCluster storeCluster = new StoreCluster();
  storeCluster.setName(
      ImmutableList.of(
          new LocalizedText().setLocale("en").setText(name)));
  storeCluster.setProductId(productIds);
  storeCluster.setOrderInPage(orderInPage);
  return androidEnterprise.storelayoutclusters()
    .insert(enterpriseId, pageId, storeCluster)
    .execute()
    .getId();
}

Menyetel halaman beranda

Halaman pertama yang ditampilkan di Google Play terkelola pada perangkat pengguna adalah halaman beranda. Sebagai EMM, Anda menentukan halaman beranda untuk setiap pelanggan. Halaman akan selalu terlihat, bahkan saat kosong, dan tidak dapat dihapus.

Dalam contoh ini, ID halaman beranda diambil untuk enterpriseId yang ditentukan:

public StoreLayout getStoreLayout(String enterpriseId) throws IOException {
  return androidEnterprise
    .enterprises()
    .getStoreLayout(enterpriseId)
    .execute();
}

Contoh berikutnya ini menetapkan halaman beranda untuk pelanggan dengan menyediakan enterpriseId pelanggan dan pageId halaman beranda pelanggan tersebut:

public StoreLayout setStoreLayout(String enterpriseId, String homepageId)
    throws IOException {
  StoreLayout storeLayout = new StoreLayout();
  storeLayout.setHomepageId(homepageId);

  return androidEnterprise
    .enterprises()
    .setStoreLayout(enterpriseId, storeLayout)
    .execute();
}

Link cepat ditampilkan di bagian atas setiap halaman, sehingga pengguna dapat dengan mudah membuka di antara halaman-halaman dalam toko. Untuk menggunakan link cepat, pertama-tama dapatkan pageId untuk halaman tersebut (ditampilkan oleh insert) dan tambahkan link ke halaman. Misalnya, jika membuat tiga halaman yang pageId-nya adalah p1, p2, p3, Anda dapat menambahkan link cepat dari halaman pertama ke dua halaman lainnya dengan hal berikut:

StorePage storePage = new StorePage();
storePage.setName(
    ImmutableList.of(new LocalizedText().setLocale("en").setText(title)));
storePage.setLink(ImmutableList.of("p2", "p3");
return androidEnterprise.storelayoutpages()
  .update(enterpriseId, "p1", storePage)
  .execute();

Contoh

Berikut ini contoh lengkap yang membuat penyimpanan dasar yang terdiri dari tiga halaman yang saling tertaut. Setiap halaman terdiri dari cluster aplikasi serupa. Setiap halaman dibuat dengan menentukan enterpriseId pelanggan dan menetapkan halaman name saja, untuk mendapatkan pageId-nya yang kemudian digunakan untuk membuat link cepat ke halaman tersebut.

// Create a basic page and return the pageId.
private String insertPage(String enterpriseId, String title,
    List<String> links) throws IOException {
  List<LocalizedText> names =
      ImmutableList.of(new LocalizedText().setLocale("en").setText(title));
  StorePage page = new StorePage();
  page.setName(names);
  page.setLink(links);
  return enterprise.storelayoutpages().insert(enterpriseId, page).execute().getId();
}

public StoreLayout setStoreLayout(String enterpriseId, String homepageId)
    throws IOException {
  StoreLayout storeLayout = new StoreLayout();
  storeLayout.setHomepageId(homepageId);

  return androidEnterprise
      .enterprises()
      .setStoreLayout(enterpriseId, storeLayout)
      .execute();
}

private String insertCluster(String enterpriseId, String pageId, String name,
    List<String> productIds, String orderInPage) throws IOException {
  StoreCluster cluster = new StoreCluster();
  List<LocalizedText> names =
      ImmutableList.of(new LocalizedText().setLocale("en").setText(name));
  cluster.setName(names);
  cluster.setProductId(productIds);
  cluster.setOrderInPage(orderInPage);
  return androidEnterprise.storelayoutclusters()
      .insert(enterpriseId, pageId, cluster)
      .execute()
      .getId();
}

private void updatePage(String enterpriseId, String pageId, String title,
    List<String> links) throws IOException {
  List<LocalizedText> names =
      ImmutableList.of(new LocalizedText().setLocale("en").setText(title));
  StorePage page = new StorePage();
  page.setName(names);
  page.setLink(links);
  enterprise.storelayoutpages()
      .update(enterpriseId, pageId, page).execute();
}

private void makeStore(String enterpriseId) throws IOException {
  // Create the pages.
  String page1 = insertPage(enterpriseId, "Home");
  String page2 = insertPage(enterpriseId, "Productivity");
  String page3 = insertPage(enterpriseId, "Accounting");

  // Set the homepage (page that displays by default when store is opened).
  setStoreLayout(enterpriseId, page1);

  // Add the links to the pages. This makes a small tree.
  updatePage(enterpriseId, page1, "Home", ImmutableList.of(page2, page3));
  updatePage(enterpriseId, page2, "Productivity", ImmutableList.of(page1));
  updatePage(enterpriseId, page3, "Accounting", ImmutableList.of(page1));

  // Add clusters with contents.
  insertCluster(
      enterpriseId,
      page1,
      "Getting Things Done",
      ImmutableList.of(
          "app:com.mytodolist",
          "app:com.google.android.gm",
          "app:com.google.android.docs"),
      "1");
  insertCluster(
      enterpriseId,
      page1,
      "Strategy",
      ImmutableList.of(
          "app:com.myplanner",
          "app:com.stratego"),
      "2");
  insertCluster(
      enterpriseId,
      page2,
      "Editors",
      ImmutableList.of(
          "app:com.myeditor",
          "app:com.betteredit",
          "app:com.lazyguy"),
      "1");
  insertCluster(
      enterpriseId,
      page2,
      "Time Management",
      ImmutableList.of(
          "app:com.mytimetracker",
          "app:com.lazygal",
          "app:com.lazyguy"),
      "2");
  insertCluster(
      enterpriseId,
      page2,
      "Accounting",
      ImmutableList.of(
          "app:com.mymoney",
          "app:com.taxpro",
          "app:com.balances"),
      "3");
}