Guia de início rápido do .NET para clientes

Siga as etapas neste guia de início rápido e, em cerca de 10 minutos, você terá um app simples do console .NET C# que faz solicitações à API do cliente de registro sem toque usando uma conta de serviço.

Pré-requisitos

Para executar este guia de início rápido, você precisa de:

  • Uma conta de serviço vinculada à sua conta de cliente do registro sem toque. Consulte Primeiros passos.
  • Visual Studio 2013 ou posterior.
  • Acesso à Internet e a um navegador da Web.

Etapa 1: ativar a API do registro sem toque

  1. Use este assistente para criar ou selecionar um projeto no Google Developers Console e ativar a API automaticamente. Clique em Continuar e, em seguida, em Acessar credenciais.
  2. Defina Quais dados você acessará? como Dados de aplicativos.
  3. Clique em Próxima. Você precisará criar uma conta de serviço.
  4. Dê um nome descritivo para Nome da conta de serviço.
  5. Anote o ID da conta de serviço, que parece um endereço de e-mail, porque você o usará mais tarde.
  6. Defina Papel como Contas de serviço > Usuário da conta de serviço.
  7. Clique em Concluído para terminar a criação da conta de serviço.
  8. Clique no endereço de e-mail da conta de serviço que você criou.
  9. Clique em **Chaves**.
  10. Clique em **Add key** e em **Create new key**.
  11. Em **Tipo de chave**, selecione **JSON**.
  12. Clique em Criar e a chave privada será salva no computador.
  13. Clique em **Fechar**.
  14. Mova o arquivo para o diretório de trabalho e renomeie-o como service_account_key.json.

Etapa 2: preparar o projeto

  1. Crie um novo projeto .NET Core C# Console Application no Visual Studio.
  2. Abra o Gerenciador de pacotes, selecione a origem do pacote nuget.org e adicione os seguintes pacotes:
    • Google.Apis.AndroidProvisioningPartner.v1
    • Google.Apis.Auth

Para saber mais, leia o documento da Microsoft Instalar e usar um pacote.

Etapa 3: configurar a amostra

  1. Arraste o service_account_key.json que você salvou quando criou a conta de serviço para o Visual Studio Solution Explorer.
  2. Selecione service_account_key.json, acesse a janela "Propriedades" e defina o campo Copiar para o diretório de saída como Sempre copiar.
  3. Substitua o conteúdo de Program.cs pelo seguinte código:
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);
            }

        }
    }
}

Etapa 4: executar a amostra

Para criar e executar a amostra, clique em Iniciar na barra de ferramentas do Visual Studio.

Observações

  • Evite compartilhar o arquivo service_account_key.json com outras pessoas. Tenha cuidado para não incluí-lo nos repositórios de código-fonte. Leia mais sobre como gerenciar secrets de conta de serviço.

Saiba mais