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

Siga as etapas deste guia de início rápido e, em cerca de 10 minutos, você terá um app de console .NET C# simples que faz solicitações à API de inscrição do cliente sem interação 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 de registro sem toque. Consulte Começar.
  • Visual Studio 2013 ou mais recente.
  • Acesso à Internet e a um navegador da Web.

Etapa 1: ativar a API de 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 Acessar credenciais .
  2. Defina Quais dados você acessará? como Dados do aplicativo.
  3. Clique em Próxima. Você vai receber uma solicitação para 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 (parece um endereço de e-mail) porque você usá-lo mais tarde.
  6. Defina o 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 **Adicionar chave** e em **Criar nova chave**.
  11. Em **Tipo de chave**, selecione **JSON**.
  12. Clique em Criar. O download da chave privada é feito 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 de aplicativo do console do .NET Core C# no Visual Studio.
  2. Abra o Gerenciador de pacotes, selecione a origem do pacote nuget.org e adicione estes pacotes:
    • Google.Apis.AndroidProvisioningPartner.v1
    • Google.Apis.Auth

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

Etapa 3: configurar o exemplo

  1. Arraste o arquivo service_account_key.json que você transferiu por download quando criou o conta de serviço no Solution Explorer do Visual Studio.
  2. Selecione service_account_key.json, acesse a janela "Properties" 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 o exemplo, clique em Start na barra de ferramentas do Visual Studio.

Observações

Saiba mais