Sto utilizzando Java SDK per Android Publisher v2
e Oauth2 v2
. Una volta creato l'account di servizio, mi è stato fornito un account di servizio JSON Google Play Android Developer
con ID client, email, chiave privata, ecc. Ho provato a cercare informazioni su come creare una credenziale in modo da utilizzare il servizio AndoirdPublisher per recuperare informazioni sugli abbonamenti degli utenti della mia app Android, diritti ecc. e memorizza queste informazioni sui nostri server di backend.HOWTO creare GoogleCredential utilizzando l'account di servizio JSON
Mi sto facendo fatica a cercare di capire come procedere. Nessuna delle documentazioni che ho visto finora aiuta a creare GoogleCredential
usando il JSON scaricato.
Ad esempio, c'è questo documentation ma menziona solo il file P12 e non il JSON. Voglio evitare P12 se possibile poiché ho più client & Vorrei salvare questo JSON in una sorta di database & quindi utilizzarlo per creare credenziali per ogni client.
Giusto per chiarire che sto cercando di creare l'oggetto GoogleCredential come descritto qui,
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();
Ma invece di impostare l'account di servizio utilizzando P12 File in questo modo setServiceAccountPrivateKeyFromP12File()
, voglio usare il JSON che porta lo stesso info & generato quando ho creato l'account di servizio.
Non completamente sicuro di quello che stai chiedendo, ma dovresti prima seguire i passaggi elencati [qui] (https://developers.google.com/android-publisher/getting_started#using_a_service_account). Ti dirà come creare un account di servizio se preferisci usarlo. Per assicurarti di essere in grado di estrarre informazioni, alcuni aspetti da verificare sono l'attivazione dell'API per sviluppatori Android di Google Play, collegare il progetto al tuo account di pubblicazione di Google Play e concedere le autorizzazioni necessarie al tuo account di servizio nella console di Google Play Store. – Andy
@Andy Grazie. Sì, ho già creato un account di servizio e voglio utilizzare il JSON generato per questo (anziché il file P12) per creare l'oggetto GoogleCredential. – Chantz
@Andy Ho aggiornato la domanda per fornire maggiori informazioni. – Chantz