ทำตามขั้นตอนในคู่มือเริ่มใช้งานฉบับย่อนี้ และในอีกประมาณ 10 นาทีคุณก็จะได้ แอปคอนโซล .NET C# แบบเรียบง่ายที่ส่งคำขอไปยังการตั้งค่าอุปกรณ์พร้อมใช้แบบรวมกลุ่ม API ของลูกค้าโดยใช้บัญชีบริการ
ข้อกำหนดเบื้องต้น
หากต้องการเรียกใช้การเริ่มต้นใช้งานอย่างรวดเร็วนี้ คุณต้องมีสิ่งต่อไปนี้
- บัญชีบริการที่ลิงก์กับบัญชีการตั้งค่าอุปกรณ์พร้อมใช้แบบรวมกลุ่มของคุณ ของคุณได้ ดูที่รับ แล้ว
- Visual Studio 2013 ขึ้นไป
- อินเทอร์เน็ตและเว็บเบราว์เซอร์
ขั้นตอนที่ 1: เปิด API การตั้งค่าอุปกรณ์พร้อมใช้แบบรวมกลุ่ม
- ใช้ this วิซาร์ดเพื่อสร้างหรือเลือกโปรเจ็กต์ใน Google Developers Console และ เปิด API โดยอัตโนมัติ คลิกต่อไป แล้วคลิกไปที่ข้อมูลเข้าสู่ระบบ
- ตั้งค่าคุณต้องการเข้าถึงข้อมูลใดเป็นข้อมูลแอปพลิเคชัน
- คลิกถัดไป ระบบจะแจ้งให้คุณสร้างบัญชีบริการ
- ตั้งชื่อที่สื่อความหมายสำหรับชื่อบัญชีบริการ
- จดบันทึกรหัสบัญชีบริการ (มีลักษณะคล้ายอีเมล) เนื่องจากคุณจะต้องใช้รหัสนี้ในภายหลัง
- ตั้งค่าบทบาทเป็นบัญชีบริการ > ผู้ใช้บัญชีบริการ
- คลิกเสร็จสิ้นเพื่อสร้างบัญชีบริการให้เสร็จสิ้น
- คลิกอีเมลของบัญชีบริการที่คุณสร้างขึ้น
- คลิก**กุญแจ**
- คลิก **เพิ่มคีย์** แล้วคลิก **สร้างคีย์ใหม่**
- สำหรับ **ประเภทคีย์** ให้เลือก **JSON**
- คลิกสร้าง แล้วคีย์ส่วนตัวจะดาวน์โหลดลงในคอมพิวเตอร์
- คลิก**ปิด**
- ย้ายไฟล์ไปยังไดเรกทอรีที่ใช้งานอยู่และเปลี่ยนชื่อ
service_account_key.json
ขั้นตอนที่ 2: เตรียมโครงการ
- สร้างโปรเจ็กต์ Console Application ใหม่ใน Visual Studio โดยใช้ .NET Core C#
- เปิดตัวจัดการแพ็กเกจ เลือกแหล่งที่มาของแพ็กเกจ nuget.org แล้วเพิ่ม
แพ็กเกจต่อไปนี้
Google.Apis.AndroidProvisioningPartner.v1
Google.Apis.Auth
ดูข้อมูลเพิ่มเติมได้ที่เอกสารของ Microsoft ติดตั้งและใช้แพ็กเกจ
ขั้นตอนที่ 3: ตั้งค่าตัวอย่าง
- ลาก
service_account_key.json
ที่คุณดาวน์โหลดเมื่อสร้าง บัญชีบริการของคุณลงใน Visual Studio Solution Explorer - เลือก
service_account_key.json
จากนั้นไปที่หน้าต่างพร็อพเพอร์ตี้ แล้วตั้งค่าช่องคัดลอกไปยังไดเรกทอรีเอาต์พุตเป็นคัดลอกเสมอ - แทนที่เนื้อหาของ
Program.cs
ด้วยโค้ดต่อไปนี้
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: เรียกใช้ตัวอย่าง
หากต้องการสร้างและเรียกใช้ตัวอย่าง ให้คลิก
Start ในแถบเครื่องมือ Visual Studioหมายเหตุ
- หลีกเลี่ยงการแชร์ไฟล์
service_account_key.json
กับผู้อื่น โปรดระมัดระวังอย่าใส่ข้อมูลดังกล่าวไว้ในที่เก็บซอร์สโค้ด อ่านคําแนะนําเพิ่มเติมเกี่ยวกับการจัดการข้อมูลลับของบัญชีบริการ