HOWTO-erstellen GoogleCredential mithilfe von Service-Konto JSON

Ich bin mit dem Java-SDK für Android Publisher v2 und Oauth2 v2. Einmal habe ich den service-Konto-ich wurde mit einer JSON-von Google Play Android Developer service-Konto mit dem client-id, E-Mail, private Schlüssel etc.. Ich habe versucht, um zu schauen und herauszufinden, wie, um Anmeldeinformationen zu erstellen, so dass ich die AndoirdPublisher Dienst zum abrufen von Informationen über meine Android App, die Benutzer, Abonnements, Berechtigungen etc, und speichern Sie diese info auf unsere backend-Server.

Ich bin immer harte Zeit versucht, herauszufinden, wie gehen über diese. Keine der Dokumentationen die ich bisher gesehen habe Hilfe bei der Erstellung GoogleCredential mithilfe der heruntergeladenen JSON.

Da ist zum Beispiel dieser Dokumentation aber es erwähnt, nur über die P12-Datei und nicht die JSON. Ich möchte vermeiden, P12, wenn möglich, da ich mehrere clients & ich möchte speichern Sie dieses JSON in eine Art von Datenbank - & verwenden Sie zum erstellen von Anmeldeinformationen für jeden client.

Genau zu klären, ich bin beim erstellen der GoogleCredential Objekt, 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 anstatt das Service-Konto mit P12-Datei, wie so setServiceAccountPrivateKeyFromP12File(), ich will das JSON trägt die gleiche info & generiert, wenn ich das service-Konto.

  • Nicht ganz sicher, was Sie Fragen, aber Sie sollten Folgen Sie zunächst den Schritten hier. Es werde Ihnen sagen, wie erstellen Sie ein service-Konto, wenn Sie lieber verwenden. Um sicherzustellen, können Sie tatsächlich ziehen Informationen, einige Dinge zu überprüfen sind, Google Play Android Developer-API aktiviert, verknüpfen Sie Ihr Projekt mit Ihrem Google Play-Konto Veröffentlichung, und gewähren Sie die notwendigen Berechtigungen, um Ihre service-Konto in der Google Play Store-Konsole.
  • Danke. Ja, ich habe bereits einen service kreiert, Konto & benutzen wollen, JSON, die generiert wurde, für die es (anstelle der P12-Datei) für die Erstellung der GoogleCredential Objekt.
  • Ich habe aktualisiert die Frage zu geben, mehr info.
InformationsquelleAutor Chantz | 2015-08-14
Schreibe einen Kommentar