Ho un'app di installazione che si collega a Google Fit, legge e scrive alcuni dati sul corpo degli utenti. Quando l'utente disattiva Google Fit nelle impostazioni applicazioni, cerco di revocare le mie applicazioni autorizzazioni per chiamando:Come disattivare Google Fit e revocare le autorizzazioni dall'app stessa
public void disableGoogleFit(){
if(!mClient.isConnected()){
Log.e(TAG, "Google Fit wasn't connected");
return;
}
PendingResult<Status> pendingResult = Fitness.ConfigApi.disableFit(mClient);
pendingResult.setResultCallback(new ResultCallback<Status>() {
@Override
public void onResult(Status status) {
if(status.isSuccess()) {
Log.i(TAG, "Google Fit disabled");
}else{
Log.e(TAG, "Google Fit wasn't disabled " + status);
}
}
});
}
Anche se ho potuto leggere correttamente i dati/scrittura, disabilitando Fit mi restituisce l'errore:
Google Fit wasn't disabled Status
{statusCode=unknown status code: 5010, resolution=null}
Edit1: Aggiunto intero metodo, in cui è visibile, quel client è connesso nel momento in cui provo disabilitare Fit.
è stato il tuo client connesso al momento della chiamata a disattivare? – SimpleGuy
Sì, è collegato – Jaroslav
Se autorizzato ad accedere a Fit, vede la tua app elencata nell'app Impostazioni Google sotto Google Fit> App e dispositivi collegati? In caso contrario, prova a seguire i passaggi per abilitare l'API di fitness a: https://developers.google.com/fit/android/get-started#step_3_enable_the_fitness_api – saxman