Membuat tata letak toko kustom

Google Play Terkelola memungkinkan Anda mendesain dan membuat tata letak Play Store untuk perusahaan pelanggan. 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 di dalam toko.

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

Elemen tata letak toko

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

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

Saat membuat halaman, Anda juga dapat menambahkan hingga 10 link cepat di bagian atas kami. 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 Play Store seperti yang terlihat di perangkat:

Layar contoh dari perangkat pengguna, yang menunjukkan elemen toko
    termasuk tautan cepat, laman, dan kumpulan aplikasi.
Gambar 1 - Layar contoh dari perangkat pengguna
  • Link cepat: Link opsional yang memberikan akses ke halaman lain. Cepat tautan mengambil nama laman yang mereka tuju.
  • Halaman: Halaman bernama dan dapat di-scroll secara vertikal yang terdiri dari cluster aplikasi.
  • Cluster (juga disebut collection): Nama yang dapat di-scroll secara horizontal carousel aplikasi. Diperluas ke halaman penuh jika halaman berisi satu cluster (atau klik "Lainnya" untuk membuatnya dapat di-scroll secara vertikal).

Batasan elemen tata letak toko

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

  • 100 aplikasi per cluster
  • 30 cluster 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 menyimpannya. Saat Anda membuat sebuah laman atau klaster, Anda menyediakan daftar lokalitas yang didukung, seperti tag bahasa IETF, dan nama lokal terkait. Jika lokal pengguna tidak ada dalam daftar yang didukung, sistem akan memilih yang terdekat yang tersedia. Misalnya, jika en-GB tidak tersedia, sistem akan memilih en-US sebagai gantinya. Jika tidak ada kecocokan terdekat, sistem memilih nama depan dalam daftar.

Menambahkan aplikasi ke tata letak toko

Semua aplikasi yang ada di policy.productPolicy ditambahkan secara otomatis jika menggunakan tata letak toko dasar. Jika perusahaan menggunakan tata letak app store, aplikasi hanya ada di tata letak kustom dan daftar productPolicy yang akan ditampilkan di perangkat. Semua item yang ada di policy.productPolicy adalah 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 pengguna yang diizinkan (menggunakan policy.productPolicy di perangkat resource) DAN policy.productAvailabilityPolicy ditetapkan ke WHITELIST, ATAU policy.productAvailabilityPolicy ditetapkan ke ALL (memungkinkan penelusuran dan penginstalan aplikasi apa pun).

Pengguna dapat menggunakan fitur penelusuran bawaan Google Play terkelola untuk menemukan dan menginstal aplikasi apa pun yang memenuhi ketentuan tersebut. Namun, aplikasi tersebut hanya akan terlihat di 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 yang dicabut persetujuan masih dapat ditambahkan ke cluster dan daftar 'izinkan', tetapi pengguna tidak akan melihatnya atau tidak dapat menginstalnya dari paket Play Store. Jika aplikasi yang persetujuannya dicabut disetujui kembali, aplikasi tersebut akan dibuat tersedia untuk pengguna lagi di Google Play Store terkelola.

Tata letak toko dasar

Secara default, tata letak toko dasar diaktifkan untuk setiap pelanggan. Tujuan tata letak dasar memiliki 1 halaman dan 1 cluster, yang menampilkan maksimum 1000 aplikasi. Aplikasi aktif halaman diurutkan sesuai urutan nilai product ID-nya. Jika Anda membuat tata letak toko (dengan menyetel storeLayoutType ="custom"), tata letak toko dasar adalah dinonaktifkan.

Membuat tata letak toko kustom

EMM dapat membuat tata letak Play Store kustom untuk setiap pelanggan perusahaannya. Tata letak Play Store kustom memungkinkan Anda menyiapkan cluster aplikasi, menambahkan cluster tertentu ke halaman, dan menentukan link cepat. Karena Anda menentukan aplikasi yang membentuk setiap elemen Anda dapat menggunakan cluster untuk mengelompokkan aplikasi terkait (misalnya, "Essentials" dan "Menyelesaikan Pekerjaan"). Pengguna hanya akan melihat aplikasi yang izinnya memiliki telah disetujui 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 Storelayoutclusters. Langkah-langkah yang diuraikan dalam di bawah ini akan memandu Anda melalui contoh dasar.

Tugas pemrograman

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

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

Setidaknya, Anda harus membuat setidaknya satu halaman yang terdiri dari satu cluster untuk Google Store secara permanen, dan cluster harus berisi setidaknya satu aplikasi. Anda juga harus menetapkan beranda. Jika Anda membuat lebih dari satu halaman, Anda memiliki opsi untuk menetapkan setelan tautan untuk ditampilkan di bagian atas setiap laman.

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

Buat halaman

Sebuah halaman terdiri dari satu atau beberapa cluster. Setiap cluster berisi setidaknya satu aplikasi. Halaman dibuat untuk perusahaan tertentu, jadi Anda harus menjalankan operasi di instance perusahaan tertentu (enterpriseId). Anda dapat memberikan nama dan informasi pelokalan untuk setiap halaman, bersama dengan daftar pageId yang dapat dijangkau pengguna dari laman. Halaman baru dibuat dengan 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 tersebut dibuat terlebih dahulu, baru kemudian dapat ditambahkan ke halaman. Untuk membuat cluster, panggil operasi insert dari Storelayoutclusters dan meneruskan nilai untuk properti ini:

  • Daftar productId yang harus terdapat dalam cluster (misalnya, productId untuk Gmail adalah app:com.google.android.gm)
  • Nama yang mudah digunakan untuk cluster, seperti Menyampaikan sesuatu Selesai
  • enterpriseId yang harus dikaitkan dengan cluster
  • pageId (untuk halaman yang seharusnya berisi cluster)
  • Penempatan cluster pada 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();
}

Menetapkan halaman beranda

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

Dalam contoh ini, ID halaman beranda diambil untuk enterpriseId:

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

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

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 situs antar halaman di toko. Untuk menggunakan link cepat, pertama-tama dapatkan pageId untuk halaman (ditampilkan oleh insert) dan tambahkan link ke halaman tersebut. Misalnya, jika Anda membuat tiga halaman yang pageId-nya adalah p1, p2, p3, Anda dapat menambahkan link cepat dari halaman pertama ke dua halaman lainnya, berisi 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 contoh lengkap yang membuat toko dasar yang terdiri dari tiga laman yang saling tertaut. Setiap halaman disusun oleh cluster aplikasi serupa. Setiap halaman dibuat dengan menentukan enterpriseId pelanggan dan menyetel halaman name saja, untuk mendapatkan pageId-nya yang kemudian digunakan untuk membuat link cepat ke kami.

// 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");
}