У меня работает приложение Google, которое в основном представляет собой приложение для отправки расписания. Мое требование заключается в том, что я хочу добавить в это приложение функцию, которая заключается в том, что когда человек заполняет расписание, когда он нажимает кнопку, я хочу получить данные о событиях из его календаря Google.
Я попытался сделать это для одного пользователя, предоставив учетные данные, которые мы получаем при включении API Календаря Google.
Мой вопрос заключается в том, что, когда я интегрирую эту службу в свое работающее приложение, теперь будет указано «x» пользователей для всех пользователей: нужно ли мне сначала вручную включить API и сохранить все учетные данные в cofig или это можно сделать во время выполнения ?
это код, который я пробовал для одного пользователя -------
string[] Scopes = { CalendarService.Scope.CalendarEventsReadonly };
UserCredential credential;
using (var stream = new FileStream(AppDomain.CurrentDomain.BaseDirectory + "credentials.json", FileMode.Open, FileAccess.Read))
{
// The file token.json stores the user's access and refresh tokens, and is created
// automatically when the authorization flow completes for the first time.
string credPath = AppDomain.CurrentDomain.BaseDirectory + "token.json";
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(GoogleClientSecrets.Load(stream).Secrets, Scopes, "user", CancellationToken.None, new FileDataStore(credPath, true)).Result;
Console.WriteLine("Credential file saved to: " + credPath);
}
var service = new CalendarService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = "IApps Calendar",
});
var events = service.Events.List("lewis@company.in").Execute();
в учетных данных у меня есть файл credentials.json, а в переменной events указан электронный адрес пользователя.