Müşteriler için .NET hızlı başlangıç kılavuzu

Bu hızlı başlangıç kılavuzundaki adımları uygulayarak yaklaşık 10 dakikada, hizmet hesabı kullanarak sıfır dokunuşla kayıt müşteri API'sine istek gönderen basit bir .NET C# konsol uygulaması oluşturabilirsiniz.

Ön koşullar

Bu hızlı başlangıç kılavuzunu çalıştırmak için şunlara ihtiyacınız vardır:

  • El değmeden kayıt müşteri hesabınıza bağlı bir hizmet hesabı. Başlayın başlıklı makaleyi inceleyin.
  • Visual Studio 2013 veya sonraki sürümler.
  • İnternete ve web tarayıcısına erişim.

1. adım: El değmeden kayıt API'sini etkinleştirin

  1. Google Developers Console'da proje oluşturmak veya mevcut bir projeyi seçmek ve API'yi otomatik olarak etkinleştirmek için bu sihirbazı kullanın. Devam ve ardından Kimlik bilgilerine git'i tıklayın ziyaret edin.
  2. Hangi verilere erişeceksiniz? alanını Uygulama verileri olarak ayarlayın.
  3. İleri'yi tıklayın. Hizmet hesabı oluşturmanız istenecektir.
  4. Hizmet hesabı adı alanına açıklayıcı bir ad girin.
  5. Daha sonra kullanacağınız için Hizmet hesabı kimliğini (e-posta adresine benzer) not edin.
  6. RolHizmet Hesapları > Hizmet Hesabı Kullanıcısı.
  7. Hizmet hesabını oluşturmayı tamamlamak için Bitti'yi tıklayın.
  8. Oluşturduğunuz hizmet hesabının e-posta adresini tıklayın.
  9. **Anahtarlar**'ı tıklayın.
  10. **Anahtar ekle**'yi ve ardından **Yeni anahtar oluştur**'u tıklayın.
  11. **Anahtar türü** için **JSON**'yi seçin.
  12. Oluştur'u tıkladığınızda özel anahtar bilgisayarınıza indirilir.
  13. **Kapat**'ı tıklayın.
  14. Dosyayı çalışma dizininize taşıyın ve service_account_key.json olarak yeniden adlandırın.

2. Adım: Projeyi hazırlayın

  1. Visual Studio'da yeni bir .NET Core C# Console Uygulaması projesi oluşturun.
  2. Paket Yöneticisi'ni açın, paket kaynağı olarak nuget.org'u seçin ve aşağıdaki paketleri ekleyin:
    • Google.Apis.AndroidProvisioningPartner.v1
    • Google.Apis.Auth

Daha fazla bilgi edinmek için Microsoft'un Paket yükleme ve kullanma başlıklı belgesini inceleyin.

3. Adım: Örneği ayarlayın

  1. Öğenizi oluştururken indirdiğiniz service_account_key.json öğesini sürükleyin hizmet hesabınızı Visual Studio Çözüm Gezgini'ne aktarın.
  2. service_account_key.json simgesini seçin, ardından Özellikler penceresine gidin ve Çıkış dizine kopyala alanını Her zaman kopyala olarak ayarlayın.
  3. Program.cs içeriğini aşağıdaki kodla değiştirin:
using Google.Apis.AndroidProvisioningPartner.v1;
using Google.Apis.AndroidProvisioningPartner.v1.Data;
using Google.Apis.Auth.OAuth2;
using Google.Apis.Services;
using System;
using System.Collections.Generic;
using System.IO;
using System.Threading;

namespace ZeroTouchCustomerQuickstart
{
    class Program
    {
        // A single scope is used for the zero-touch enrollment customer API.
        static readonly string[] Scopes =
            { "https://www.googleapis.com/auth/androidworkzerotouchemm" };
        static string ApplicationName = "Zero-touch Enrollment .NET Quickstart";

        static void Main(string[] args)
        {
            GoogleCredential credential;

            // Authenticate using the service account key
            credential = GoogleCredential.FromFile("service_account_key.json")
                .CreateScoped(Scopes);

            // Create a zero-touch enrollment API service endpoint.
            var service = new AndroidProvisioningPartnerService(new BaseClientService.Initializer
            {
                HttpClientInitializer = credential,
                ApplicationName = ApplicationName
            });

            // Get the customer's account. Because a customer might have more
            // than one, limit the results to the first account found.
            CustomersResource.ListRequest accountRequest = service.Customers.List();
            accountRequest.PageSize = 1;
            CustomerListCustomersResponse accountResponse = accountRequest.Execute();
            if (accountResponse.Customers.Count == 0)
            {
                // No accounts found for the user. Confirm the Google Account
                // that authorizes the request can access the zero-touch portal.
                Console.WriteLine("No zero-touch enrollment account found.");
                Environment.Exit(-1);
            }
            Company customer = accountResponse.Customers[0];
            var customerAccount = String.Format("customers/{0}", customer.CompanyId);


            // Send an API request to list all the DPCs available.
            CustomersResource.DpcsResource.ListRequest request = service.Customers.Dpcs.
                List(customerAccount);
            CustomerListDpcsResponse response = request.Execute();

            // Print out the details of each DPC.
            IList<Dpc> dpcs = response.Dpcs;
            foreach (Dpc dpcApp in dpcs)
            {
                Console.WriteLine("Name:{0}  APK:{1}",
                                  dpcApp.DpcName,
                                  dpcApp.PackageName);
            }

        }
    }
}

4. Adım: Örneği çalıştırın

Örneği derleyip çalıştırmak için Visual Studio araç çubuğunda Başlat'ı tıklayın.

Notlar

  • service_account_key.json dosyanızı kimseyle paylaşmayın. Dikkatli olun kod depolarına eklenmemesi gerektiğini unutmayın. Hizmet hesabı gizli bilgilerini yönetme hakkında daha fazla öneriyi okuyabilirsiniz.

Daha fazla bilgi