Genel yönetim görevleri

EMM'ler, Android için kurumsal çözümlerinde çeşitli tipik yönetim görevlerini (ör. bu kılavuzda gösterilen görevler) gerçekleştirebilir. Örnek kod, Java için Google Play EMM API İstemci Kitaplığı®'nı kullanır.

Kullanıcı arama ve kullanıcı ayrıntılarını alma

Google Play EMM API'lerinin çoğu; uygulama yükleme, yararlanma hakkı alma ve lisanslama gibi kullanıcıyla ilişkili bazı görevleri gerçekleştirmek için (enterpriseId öğesine ek olarak) bir userId gerektirir. Bazı çağrılar için kullanıcı nesnesi gerekir.

Bir kuruluş Managed Google Play Accounts kullanıyorsa kullanıcı e-posta adresleri ile bu hesapların kullanıcı kimlikleri arasında bir eşleme sağlarsınız. Google Hesapları ile UsersListResponse kullanırsınız.

Kullanıcı ara

Bu kod örneği, Google Hesapları ile ilişkilendirilen kullanıcı kimliklerini alır. Bu ayar, Managed Google Play Accounts kullanan kuruluşlar için geçerli değildir.

Bu örnekte, User ve UsersListResponse modellerini kodunuza içe aktardığınız varsayılmıştır. Belirli bir kullanıcı hesabına sahip olmak için enterpriseId ve e-postayı UsersListResponse adresine ileterek userId alın.

public UsersListResponse list(String enterpriseId, String email) throws
   IOException {
    return androidEnterprise
        .users()
        .list(enterpriseId, email)
        .execute();
}

Kullanıcı ayrıntılarını alma

userId cihazını aldıktan sonra diğer ayrıntıları alabilirsiniz. Görüntüleyin Users.Get

public User get(String enterpriseId, String userId) throws IOException {
    return androidEnterprise
        .users()
        .get(enterpriseId, userId)
        .execute();
}

Kullanıcılara uygulamalara erişim izni verme

Kullanıcının hangi uygulamalara erişebileceğini kontrol etmek için Google Play EMM API'lerini kullanabilirsiniz Google Play Store'dan. Bir uygulamaya erişim, şunları içerir: arama, görüntüleme, yükleme ve güncelleme. Üç farklı erişim seviyeler:

  • Yalnızca izin verilen uygulamalar: Kullanıcı yalnızca belirli uygulamalara erişebilir.
  • Tüm onaylı uygulamalar: Kullanıcı, şu uygulama için onaylanmış tüm uygulamalara erişebilir: inceleyebilirsiniz.
  • Tüm uygulamalar: Kullanıcı, herkese açık tüm uygulamalara erişebilir bir uygulamadır.

Bir kullanıcıya yalnızca belirli uygulamalara erişim izni verme

Aşağıdaki örnekte, bir kullanıcıya belirli bir uygulama grubuna nasıl erişim izni verileceği gösterilmektedir Google Play Store'dan. Süreç şunları içerir: şu adımları uygulayın:

  • Kullanıcı (productSet) için onaylanmış productIds (uygulamaların) bir listesini oluşturun.
  • productSetBehavior dizesinin değerini "whitelist" olarak ayarlayarak kullanıcının yalnızca belirtilen listedeki uygulamalara erişebileceğini belirtin.
  • productIds listesini ve davranış ayarını, setAvailableProductSet ile kullanıcının mevcut ürün grubuna uygulayın.
public ProductSet setProductSet(String enterpriseId, String userId,
    List<String> productIds) throws IOException {
  ProductSet productSet = new ProductSet();
  productSet.setProductId(productIds);
  productSet.setProductSetBehavior("whitelist");

  return androidEnterprise
      .users()
      .setAvailableProductSet(enterpriseId, userId, productSet)
      .execute();
}

Bir kullanıcıya tüm onaylı uygulamalar için erişim izni verme

Aşağıdaki örnekte, onaylanan herhangi bir uygulamaya kullanıcıya nasıl erişim izni verileceği gösterilmektedir . Süreç şunları içerir: şu adımları uygulayın:

  • productSetBehavior dizesinin değerini "allApproved" olarak ayarlayarak kullanıcının kuruluş için onaylanmış tüm uygulamalara erişebileceğini belirtin.
  • Bu ayarı, setAvailableProductSet özelliğini kullanarak kullanıcıya uygulayın.
public ProductSet setUserIncludeApprovedApps(String enterpriseId, String userId)
    throws IOException {
  ProductSet productSet = new ProductSet();
  productSet.setProductSetBehavior("allApproved");

  return androidEnterprise
      .users()
      .setAvailableProductSet(enterpriseId, userId, productSet)
      .execute();
}

Not: productSetBehavior değeri "allApproved" olarak ayarlandığında productSet için herhangi bir productIds belirtmeniz gerekmez.

Bir kullanıcıya tüm uygulamalara erişim izni verme

Aşağıdaki örnekte, bir kullanıcıya yönetilen Google Play Store'da, herkese açık Google Play Store'da sunulan herhangi bir uygulamaya erişebilirsiniz. Tüm uygulamalara erişimi olan kullanıcılar yalnızca kendi uygulamaları için mağaza düzenini görürler. Google Play'i açtıklarında ancak ek uygulamalar bulabiliyorlarsa yardımcı olur.

BT yöneticileri gibi bazı güvenilir kullanıcılar, daha yüksek düzeyde kurumsal için onaylamadan önce uygulamaları test ve değerlendirme erişimi. İlgili içeriği oluşturmak için kullanılan bir kullanıcıya tüm uygulamalara erişim izni verme süreci aşağıdaki adımları içerir:

  • productSetBehavior dizesinin değerini "includeAll" olarak ayarlayarak kullanıcının Google Play Store'daki tüm uygulamalara erişebileceğini belirtin.
  • Bu ayarı, setAvailableProductSet özelliğini kullanarak kullanıcıya uygulayın.
public ProductSet setUserIncludeAllApps(String enterpriseId, String userId)
    throws IOException {
  ProductSet productSet = new ProductSet();
  productSet.setProductSetBehavior("includeAll");

  return androidEnterprise
      .users()
      .setAvailableProductSet(enterpriseId, userId, productSet)
      .execute();
}

Not: productSetBehavior değeri "includeAll" olarak ayarlandığında productSet için herhangi bir productIds belirtmeniz gerekmez.

Mağaza düzeni oluşturma

Kullanıcılara uygulamalara erişim izni verdikten sonra uygulamaları, Managed Google Play Store'da görüntülenmeleri için kümeler halinde gruplandırın.

Storelayoutpages ve Storelayoutclusters API'lerini kullanarak müşterilerinizin her biri için benzersiz, özelleştirilmiş bir mağaza düzeni oluşturabilirsiniz. Tipik bir düzen bir dizi sayfadan oluşur ve bunların her biri uygulama kümeleri içerebilir. İlgili uygulamaları aynı kümeye yerleştirebilirsiniz. Ayrıntılar ve örnek kod için Özel mağaza düzenleri oluşturma bölümüne bakın.

Bir uygulamanın izinlerini alma

Bir uygulamayı özel mağaza düzenine eklemek (veya kullanıcının cihazına sessizce yüklemek cihazda) yer alır ve kullanıcının seçebilmesi için uygulamayı görüntüler. Kuruluşun tamamı için bu uygulamaya erişim izinlerini kabul etmek Yöneticiler şunları yapabilir: uygulama izinlerini kabul etme ve uygulamaları yönetilen Google Play Console (Managed Google Play'e genel bakış sayfasına göz atın).

En iyi uygulama olarak, izin iframe'ini EMM konsolu. Bu, kullanıcının sayfaya ayrıca gitmesi gerekmeyeceği anlamına gelir. Managed Google Play Console. iframe'in URL'sini almak için Products.getApprovalUrl işlevini kullanın.

public String getApprovalUrl(String enterpriseId, String productId)
    throws IOException {
  return androidEnterprise
      .products()
      .generateApprovalUrl(enterpriseId, productId)
      .execute()
      .getUrl();
}

Bu izinleri kabul etmek için Products.approve hesabını kullanın.

public void approveProduct(String enterpriseId,
    String productId,
    String approvalUrl) throws IOException {
  ProductsApproveRequest productsApproveRequest =
      new ProductsApproveRequest()
          .setApprovalUrlInfo(
              new ApprovalUrlInfo().setApprovalUrl(approvalUrl));
  androidEnterprise
      .products()
      .approve(enterpriseId, productId, productsApproveRequest)
      .execute();
  }

Kullanıcının cihazlarını alma

Cihaza özel işlemler yapmak için, cihazınızla ilişkilendirilmiş cihazları tanımlamanız gerekir. daha ayrıntılı şekilde ele alınmıştır. Bu örnek, DevicesListResponse kullanılarak belirli bir userID için cihaz listesini döndürür.

public DevicesListResponse list(String enterpriseId, String userId) throws
   IOException {

    return androidEnterprise
        .devices()
        .list(enterpriseId, userId)
        .execute();
}

Kullanıcı, erişmeye çalıştığında sunulan Hizmet Şartları'nı kabul ettiyse kullanıyorsanız yanıt, yönetilmeyen cihazları içeriyorsa (unmanagedProfile yönetim türüne sahip cihazlar).

Bir cihazın durumunu alma ve ayarlama

Bu yönetim görevi yalnızca Google Hesapları kullanan kuruluşlar için geçerlidir. Google Managed Google Play Accounts kullanan kuruluşlar için geçerli değildir.

Kullanıcının yönetilen Google Hesabı yönetilen bir cihazda etkinleştirildiğinde, aşağıdaki nedenlerle Google hizmetlerinin etkinleştirilmesi (veya devre dışı bırakılması):

EMM yaptırımı devre dışı bırakılırsa cihaz durumu yoksayılır ve hesap Android cihazda etkinleştirildiğinde Google hizmetlerine erişim izni verilir. EMM yaptırımı etkinse ancak cihazın durumu etkin değilse kullanıcılar uygulamayı yükleyemez Google Play'deki uygulamalar ve Google Play EMM API'leri sessizce yüklenememektedir cihazdaki uygulamaları kullanabilirsiniz.

Bu örnekte, belirli bir cihazın durumunun nasıl alınacağı gösterilmektedir ( enterpriseId, userId ve deviceId).

getState() ve setState() işlemi, managementType değerine sahip cihazlarda çalışır. Yalnızca managedDevice veya managedProfile (Devices kaynağında). Şu özelliğe sahip cihazlar: bir unmanagedProfile managementType bu API'lerle kontrol edilemez.

public DeviceState getState(String enterpriseId, String userId, String
   deviceId) throws IOException {

    return androidEnterprise
        .devices()
        .getState(enterpriseId, userId, deviceId)
        .execute();
}

AccountState dizesini uygun sabit değere ekleyin.

public DeviceState setState(String enterpriseId, String userId, String
   deviceId, String accountState) throws IOException {

    DeviceState deviceState = new DeviceState();
    deviceState.setAccountState(accountState);

    return androidEnterprise
        .devices()
        .setState(enterpriseId, userId, deviceId, deviceState)
        .execute();
}

Bir cihaza uygulama push yükleme

Yöneticiler uygulamaları sessizce yükleyebilir. Kullanıcı etkileşimi gerekmez. Bu örnekte, bir uygulamayı (productId tarafından tanımlanır) sessizce yüklemek için Installs.Update kullanılmıştır. (deviceId tarafından tanımlanır).

public Install update(String enterpriseId, String userId, String
   deviceId, String productId) throws IOException {

    return androidEnterprise
        .installs()
        .update(enterpriseId, userId, deviceId, productId,
           new Install())
        .execute();
}

Uygulama cihazda zaten mevcutsa ve güncellenmiş bir sürüm varsa uygulama yeni sürüme güncellenir.

Onaylı uygulamalar listesinde uygulama arama ve alma

Yöneticiler, Managed Google Play'deki kullanıcılarının kullanımına sunulan onaylı uygulamaların bir listesini oluşturur ve bu listeyi yönetir. İş profili olan KCG cihazlarındaki kullanıcılar ve cihazın tamamının kuruluş tarafından yönetildiği kurumsal sorumlu cihazlardaki kullanıcılar yalnızca bu onaylananlar listesinden uygulama indirebilir.

EMM konsolunuzu arama kutusu içerecek şekilde özelleştirebilirsiniz. Böylece yöneticilerin yalnızca onaylanan uygulamalar listesinde olan uygulamaları arayabilir. Arama işlevi, standart bir Managed Google Play arama işleviyle aynı parametreleri kabul eder, ancak yalnızca onaylı uygulamalar listesindeki uygulamaları arar.

Örneğin yönetici, onaylı uygulamalar listesindeki bir uygulamayı kuruluşundaki cihazlara yüklemek isterse uygulamayı bulmak için EMM konsolundaki bu arama işlevini kullanabilir.

Sorgunuzda, sonucunuzun içermesi gereken maksimum ürün sayısını (ör. setMaxResults(10L)) ekranı doldurmaya yetecek kadar belirtebilirsiniz. Varsayılan değer 100'dür ve bu değer aynı zamanda tek seferde döndürülebilecek maksimum değerdir. Sonuç bir sayfalandırma jetonu içerdiğinde, sayfalara ayırma jetonunu ileterek alabileceğiniz daha fazla sonuç olur.

Bu örnekte, üretkenlik uygulamaları için yapılan bir aramanın ilk 10 sonucunun nasıl alınacağı gösterilmektedir. Şu sayfaya göz atın: Products.List.

public List searchProducts(String enterpriseId) throws IOException {
  ProductsListResponse executeResult =
      androidEnterprise
          .products()
          .list(enterpriseId)
          .setMaxResults(10L)
          .setQuery("productivity")
          .execute();
  return executeResult.getProduct();
}

Arama sonucu sayfalara ayırma jetonu içeriyorsa arama, setMaxResults adetten fazla veya bu örnekte 10'dan fazla sonuç üretmiştir. Daha fazla sonuç almak için aramayı yeniden yapın ve sayfalara ayırma jetonunu isteğe ekleyin. Bu örnekte sonraki 10 sonuç gösterilir.

public ProductsListResponse continueSearch(
    String enterpriseId, ProductsListResponse previousResponse) throws IOException {
  ProductsListResponse nextResults =
      androidEnterprise
          .products()
          .list(enterpriseId)
          .setMaxResults(10L)
          .setToken(previousResponse.getTokenPagination().getNextPageToken())
          .setQuery("productivity")
          .execute();
  return nextResults;
}