Я использую Java SDK для Android Publisher v2
и Oauth2 v2
. Когда я создал учетную запись службы, мне предоставили JSON из учетной записи службы Google Play Android Developer
с идентификатором клиента, электронной почтой, закрытым ключом и т. Д. Я попытался осмотреться и выяснить, как создать учетные данные, чтобы я использовал службу AndoirdPublisher для получения информации на моих подписях пользователей Android, правах и т. д. и хранить эту информацию на наших серверных серверах.HOWTO создайте GoogleCredential с помощью учетной записи службы JSON
Мне нелегко пытаться выяснить, как это сделать. Ни одна из документов, которые я видел до сих пор, не помогает в создании GoogleCredential
с использованием загруженного JSON.
Например, есть documentation, но в нем упоминается только файл P12, а не JSON. Я хочу избежать P12, если это возможно, поскольку у меня есть несколько клиентов. & Я хотел бы сохранить этот JSON в какой-то базе данных &, а затем использовать его для создания учетных данных для каждого клиента.
Просто для уточнения я пытаюсь создать объект GoogleCredential, как описано здесь,
import com.google.api.client.googleapis.auth.oauth2.GoogleCredential;
import com.google.api.client.googleapis.javanet.GoogleNetHttpTransport;
import com.google.api.client.http.HttpTransport;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.jackson2.JacksonFactory;
import com.google.api.services.sqladmin.SQLAdminScopes;
// ...
String emailAddress = "[email protected]";
JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance();
HttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport();
GoogleCredential credential = new GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(emailAddress)
.setServiceAccountPrivateKeyFromP12File(new File("MyProject.p12"))
.setServiceAccountScopes(Collections.singleton(SQLAdminScopes.SQLSERVICE_ADMIN))
.build();
Но вместо установки учетной записи службы с помощью P12 файла, как так setServiceAccountPrivateKeyFromP12File()
, я хочу использовать JSON, который несет тот же info &, сгенерированный при создании учетной записи службы.
Не совсем уверен, что вы просите, но сначала вы должны выполнить перечисленные ниже шаги [https://developers.google.com/android-publisher/getting_started#using_a_service_account). Он расскажет вам, как создать учетную запись службы, если вы предпочитаете ее использовать. Чтобы убедиться в том, что вы действительно можете извлечь информацию, некоторые вещи, которые нужно проверить, включают в себя API разработчика Android для Google Play, свяжите свой проект с учетной записью публикации Google Play и предоставите необходимые разрешения для учетной записи службы в консоли Google Play Store. – Andy
@ Энди Спасибо. Да, я уже создал учетную запись службы и хочу использовать созданный для нее JSON (вместо файла P12) для создания объекта GoogleCredential. – Chantz
@ Энди Я обновил вопрос, чтобы дать больше информации. – Chantz