Ich verwende das Java SDK für Android Publisher v2
und Oauth2 v2
. Sobald ich das Dienstkonto erstellt hatte, wurde mir ein JSON von Google Play Android Developer
Dienstkonto mit Client-ID, E-Mail, privatem Schlüssel usw. zur Verfügung gestellt. Ich habe versucht, mich umzusehen und herauszufinden, wie ich eine Anmeldeinformation erstellen kann, damit ich den AndoirdPublisher-Dienst zum Abrufen von Informationen verwende auf den Abonnenten meiner Android-App, Berechtigungen usw. und speichere diese Informationen auf unseren Backend-Servern.So erstellen Sie GoogleCredential mit dem Dienstkonto JSON
Ich habe Schwierigkeiten, herauszufinden, wie man das macht. Keine der Dokumentationen, die ich bisher gesehen habe, hilft beim Erstellen von GoogleCredential
mit dem heruntergeladenen JSON.
Zum Beispiel gibt es diese , aber es erwähnt nur über P12-Datei und nicht die JSON. Ich möchte P12 vermeiden, wenn möglich, da ich mehrere Clients habe & Ich möchte dieses JSON in einer Art Datenbank speichern & dann verwenden, um Credential für jeden Client zu erstellen.
Nur um zu klären Ich versuche, das GoogleCredential Objekt zu erstellen, wie hier beschrieben,
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();
Aber statt des Dienstkontos der Einstellung P12 mit Datei wie so setServiceAccountPrivateKeyFromP12File()
, möchte ich die JSON verwenden, die das gleiche trägt Info & generiert, wenn ich das Dienstkonto erstellt habe.
Nicht ganz sicher, was Sie fragen, aber Sie sollten zuerst die Schritte ausführen [hier] (https://developers.google.com/android-publisher/getting_started#using_a_service_account). Sie erfahren, wie Sie ein Dienstkonto erstellen, wenn Sie es lieber verwenden möchten. Um sicherzugehen, dass Sie tatsächlich Informationen abrufen können, aktivieren Sie die Google Play Android-Entwickler-API, verknüpfen Sie Ihr Projekt mit Ihrem Google Play-Veröffentlichungskonto und erteilen Sie Ihrem Dienstkonto die erforderlichen Berechtigungen in der Google Play Store-Konsole. – Andy
@Andy Danke. Ja, ich habe bereits ein Dienstkonto erstellt und möchte den JSON verwenden, der dafür generiert wurde (anstelle der P12-Datei), um das GoogleCredential-Objekt zu erstellen. – Chantz
@Andy Ich habe die Frage aktualisiert, um weitere Informationen zu geben. – Chantz