Bu sayfada, yapabileceğiniz bazı genel işlemlere örnekler verilmiştir. Ortak Android Bayi Kitaplığı şunları içerir:
ResellerService
nesne oluşturCustomer
nesne oluştur- Bir grup cihaz için hak talebinde bulunma
- Bir grup cihaz için hak talebini iptal etme
- Samsung cihaz değişimi
- Android (Samsung olmayan) cihaz değişimi
ResellerService
nesne oluşturun
ResellerService
nesneleri oluşturmak için Samsung ve Google fabrika sınıflarını kullanın.
ResellerService
nesneleriyle, bir dizi yaygın yöntem kaydettirilebilir
Samsung ve diğer Android cihazlar.
Samsung cihazlar
Aşağıdaki örnekte,ResellerService
Samsung cihazları yönetmek için SamsungResellerServiceFactory
sınıfı.
Bunu yapabilmek için öncelikle ilk katılım işlemini yapmanız gerekir. Knox Dağıtım Programı (KDP) ile test edebilirsiniz.
ResellerService samsungResellerService = SamsungResellerServiceFactory.createResellerService(resellerId, serviceAccountKeyFilePath, clientIdentifier);
Diğer Android cihazlar
Aşağıdaki örnekte,ResellerService
Diğer (Samsung olmayan) Android cihazları yönetmek için GoogleResellerServiceFactory
sınıf
cihazlar. Bunu yapmadan önce Başlayın
el değmeden kayıt için
(resellerId
ve hizmet hesabı anahtarınızı almak için)
ResellerService googleResellerService = GoogleResellerServiceFactory.createResellerService(resellerId, serviceAccountKeyFilePath);
Customer
nesne oluşturun
Samsung ve Samsung olmayan cihaz satın alan bir müşterinin iki müşteri kimliği olması gerekir.
Samsung cihazlar
Samsung cihazlarını yönetmek için müşterinin Knox Müşteri Kimliğini kullanırsınız. To almak için
Knox Müşteri Kimliği için öncelikle bir Customer
nesnesi oluşturmanız gerekir. Bunun için,
createCustomer
SamsungResellerService
SamsungResellerServiceFactory
. Aşağıda bununla ilgili bir örnek verilmiştir:
CreateCustomerRequest request = CreateCustomerRequest.newBuilder()
.setCustomerName("TestCustomer") .addPrimaryEmails("superAdmin@gmail.com")
.putVendorParams("country", "US") .putVendorParams("firstName", "Avery")
.putVendorParams("lastName", "Yamada") .putVendorParams("service", "KME")
.build();
CreateCustomerResponse response = samsungResellerService.createCustomer(request);
String companyId = response.getCustomer().getCompanyReference().getCompanyId();
Başarılı olursa istek, kaynak olarak CreateCustomerResponse
nesnesi döndürür.
Knox Müşteri Kimliğini çıkarabilirsiniz.
Diğer Android cihazlar
Diğer Android cihazlarda ise müşterinin el değmeden kayıt özelliğinin etkinleştirilmesi gerekir.
müşteri kimliği. Müşteri zaten başka bir müşteride el değmeden kayıt özelliğini kullanıyorsa
mevcut müşteri kimliğini kullanırsınız. Aksi takdirde,
Customer
nesne algılandı. Bunun için ResellerService
kullanarak createCustomer
numaralı telefonu arayın
GoogleResellerServiceFactory
projesinden oluşturulmuştur. Örnek:
CreateCustomerRequest request = CreateCustomerRequest.newBuilder()
.setCustomerName("TestCustomer")
.addPrimaryEmails("owner@gmail.com")
.addSecondaryEmails("admin@gmail.com")
.build();
CreateCustomerResponse response = googleResellerService.createCustomer(request);
String companyId = response.getCustomer().getCompanyReference().getCompanyId();
Başarılı olursa istek bir CreateCustomerResponse
nesnesi döndürür. Şunları yapabilirsiniz:
müşteri kimliğini yanıttan alın.
Bir cihaz grubu talep edin
Bir cihaz için hak talebinde bulunduğunuzda cihaz ile müşteri arasında ilişkilendirme oluşturulur. Örneğin, Örneğin, bir müşteriye bir grup cihaz satıyorsanız, olanak tanır.
Bu örnekte, aşağıdakileri içeren bir cihaz grubunu işlemenin bir yolu gösterilmektedir: birden fazla üreticiden cihaz siparişleri (Samsung ve Android cihazlar) karşılaştırabilirsiniz.
1. Adım: Cihazları ve müşterileri düzenleyin
Cihazların IMEI'leri, üreticileri ve kimliklerini içeren bir tablo siparişleri yönetmenin bir yolu da siparişleri ikiye ayırmaktır. listeler: Samsung cihaz siparişleri ve diğer Android (Samsung olmayan) cihaz siparişleri. Daha sonra, her liste için cihazları müşteriye göre gruplandırın. Örneğin:
Samsung cihazlar
Müşteri adı | Samsung Knox müşteri kimliği | Üretici | IMEI |
---|---|---|---|
ABC şirketi | 11 |
Samsung |
|
Diğer Android cihazlar
Müşteri adı | Müşteri Kimliği | Üretici | IMEI |
---|---|---|---|
ABC şirketi | 21 |
Google |
1234567803 |
XYZ şirketi | 22 |
Sony |
|
2. Adım: ClaimDevicesRequest
nesnesini oluşturun
Samsung cihazlar
// Note: You can only claim devices for a single customer in each request.
ClaimDevicesRequest claimSamsungDevicesRequest = ClaimDevicesRequest.newBuilder()
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.SAMSUNG)
.setCompanyId("11")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567801")
.setManufacturer("Samsung")
.build())
.build())
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.SAMSUNG)
.setCompanyId("11")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567802")
.setManufacturer("Samsung")
.build())
.build())
.build();
Diğer Android cihazlar
ClaimDevicesRequest claimGoogleDevicesRequest = ClaimDevicesRequest.newBuilder()
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.GOOGLE)
.setCompanyId("21")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567803")
.setManufacturer("Google")
.build())
.build())
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.GOOGLE)
.setCompanyId("22")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567804")
.setManufacturer("Sony")
.build())
.build())
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.GOOGLE)
.setCompanyId("22")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567805")
.setManufacturer("Sony")
.build())
.build())
.build();
3. Adım: Müşteriler için cihazlar için hak talebinde bulunun
Müşteriler için cihaz talebinde bulunmak istiyorsanız ClaimDevicesAsync
numaralı telefonu arayın. Bu örnekler
iki ayrı istek gerektirir: biri Samsung ResellerService
nesnesinden
ve diğeri Google ResellerService
nesnesinden.
// Samsung devices
ClaimDevicesResponse samsungResponse = samsungResellerService.claimDevicesAsync(claimSamsungDevicesRequest);
// Other Android devices
ClaimDevicesResponse googleResponse = googleResellerService.claimDevicesAsync(claimGoogleDevicesRequest);
ClaimDevicesAsync
isteği, Operation
nesne listesi döndürür.
isteğin durumunu (devam ediyor, tamamlandı, hatalarla tamamlandı,
veya başarısız oldu). Bir işlemin durumunu kontrol etmek için (örneğin,
IN_PROGRESS
döndürüldü), getOperation
numaralı telefonu arayın.
// Samsung devices
GetOperationRequest samsungOperationRequest = GetOperationRequest.newBuilder().setOperationId(samsungOperationId).build();
Operation samsungOperation = samsungResellerService.getOperation(samsungOperationRequest);
// Other Android devices
GetOperationRequest googleOperationRequest = GetOperationRequest.newBuilder().setOperationId(googleOperationId).build();
Operation googleOperation = googleResellerService.getOperation(googleOperationRequest);
Bir cihaz grubu için hak talebini iptal etme
Bir cihazın hak talebinin iptal edilmesi, cihazın müşteriyle ilişkisini keser. En son haberleri sunan, bir cihaz siparişi iptal edilirse veya bir ürün cihaz başarıyla tamamlanamıyor. Bir cihaz grubu için hak talebini iptal etmek isterseniz şu adımları uygulayın:
1. Adım: UnclaimDevicesRequest
nesnesini oluşturun
Samsung cihazlar
// Each request can only unclaim devices belonging to a single customer. The request must also
// include the customer's Samsung Knox customer ID.
UnclaimDevicesRequest unclaimSamsungDevicesRequest = UnclaimDevicesRequest.newBuilder()
.putVendorParams("customerId", "11")
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567801")
.build())
.build())
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567802")
.build())
.build())
.build();
Diğer Android cihazlar
UnclaimDevicesRequest unclaimGoogleDevicesRequest = UnclaimDevicesRequest.newBuilder()
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567803")
.build())
.build())
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567804")
.build())
.build())
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567805")
.build())
.build())
.build();
2. adım: Cihazların talebini iptal edin
Cihazlarla ilgili hak talebini iptal etmek için UnclaimDevicesAsync
numaralı telefonu arayın. Bu örnekte iki veya daha fazla
ayrı istekler: biri Samsung ResellerService
nesnesinden, diğeri de
Google ResellerService
nesnesidir.
UnclaimDevicesResponse samsungResponse = samsungResellerService.unclaimDevicesAsync(unclaimSamsungDevicesRequest);
UnclaimDevicesResponse googleResponse = googleResellerService.unclaimDevicesAsync(unclaimGoogleDevicesRequest);
Bir UnclaimDevicesAsync
isteği, Operation
nesne listesi döndürür.
isteğin durumunu (devam ediyor, tamamlandı, hatalarla tamamlandı,
ya da başarısız oldu) Bir işlemin durumunu kontrol etmek için (örneğin, yanıtınız
IN_PROGRESS
döndürüldü), getOperation
numaralı telefonu arayın.
Samsung cihazlar
GetOperationRequest samsungOperationRequest = GetOperationRequest.newBuilder().setOperationId(samsungOperationId).build();
Operation samsungOperation = samsungResellerService.getOperation(samsungOperationRequest);
Diğer Android cihazlar
GetOperationRequest googleOperationRequest = GetOperationRequest.newBuilder().setOperationId(googleOperationId).build();
Operation googleOperation = googleResellerService.getOperation(googleOperationRequest);
Samsung cihaz değişimi
Herhangi bir nedenle değiştirilmesi gereken cihazı değiştirebilirsiniz. Bu örnek, bir Samsung cihazı başka bir Samsung ile değiştirdiğinizi varsayar. olanak tanır.
1. Adım: UnclaimDeviceRequest
nesnesi oluşturun
// Note: The request must include the customer's Samsung Knox customer ID.
UnclaimDevicesRequest unclaimSamsungDevicesRequest = UnclaimDevicesRequest.newBuilder()
.putVendorParams("customerId", "11")
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567801")
.build())
.build())
.build();
2. adım: UnclaimDeviceAsync
numaralı telefonu arayın
UnclaimDevicesResponse samsungResponse = samsungResellerService.unclaimDevicesAsync(unclaimSamsungDevicesRequest);
Bir UnclaimDevicesAsync
isteği, Operation
nesne listesi döndürür.
isteğin durumunu (devam ediyor, tamamlandı, hatalarla tamamlandı,
veya başarısız oldu). Bir işlemin durumunu kontrol etmek için (örneğin,
IN_PROGRESS
döndürüldü), getOperation
numaralı telefonu arayın:
GetOperationRequest samsungOperationRequest = GetOperationRequest.newBuilder().setOperationId(samsungOperationId).build();
Operation samsungOperation = samsungResellerService.getOperation(samsungOperationRequest);
3. Adım: Bir ClaimDeviceRequest
nesnesi oluşturun
ClaimDevicesRequest claimSamsungDevicesRequest = ClaimDevicesRequest.newBuilder()
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.SAMSUNG)
.setCompanyId("11")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567806")
.setManufacturer("Samsung")
.build())
.build())
.build();
4. adım: ClaimDeviceAsync
numaralı telefonu arayın
ClaimDevicesResponse samsungResponse = samsungResellerService.claimDevicesAsync(claimSamsungDevicesRequest);
ClaimDevicesAsync
isteği, Operation
nesne listesi döndürür.
isteğin durumunu (devam ediyor, tamamlandı, hatalarla tamamlandı,
veya başarısız oldu). Bir işlemin durumunu kontrol etmek için (örneğin,
IN_PROGRESS
döndürüldü), getOperation
numaralı telefonu arayın:
GetOperationRequest samsungOperationRequest = GetOperationRequest.newBuilder().setOperationId(samsungOperationId).build();
Operation samsungOperation = samsungResellerService.getOperation(samsungOperationRequest);
Android (Samsung olmayan) cihazı değiştirin
Herhangi bir nedenle değiştirilmesi gereken cihazı değiştirebilirsiniz. Bu örnek olarak, bir Android (Samsung olmayan) cihazı başka bir Android (Samsung olmayan) cihaz.
1. Adım: UnclaimDeviceRequest
nesnesi oluşturun
UnclaimDeviceRequest unclaimGoogleDeviceRequest = UnclaimDeviceRequest.newBuilder()
.setUnclaim(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567803")
.build())
.build())
.build();
2. adım: UnclaimDevice
numaralı telefonu arayın
googleResponse = googleResellerService.unclaimDevice(unclaimGoogleDeviceRequest);
3. Adım: Bir ClaimDeviceRequest
nesnesi oluşturun
ClaimDeviceRequest claimGoogleDeviceRequest = ClaimDeviceRequest.newBuilder()
.setClaim(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.GOOGLE)
.setCompanyId("21")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567807")
.setManufacturer("Google")
.build())
.build())
.build();
4. adım: ClaimDevice
numaralı telefonu arayın
ClaimDeviceResponse response = googleResellerService.claimDevice(claimGoogleDeviceRequest);
Başarılı olursa çağrı şunu içeren bir ClaimDeviceResponse
nesnesi döndürür:
deviceId
. Aksi takdirde, hata kodu içeren yaygın bir istisnayı uygular.