J'ai fait this tutorial en utilisant Android Studio IDE.Exception fatale. Utiliser Retrofit2-beta3 ne peut pas récupérer les données d'apiUrl en utilisant retrofit2
Le problème que j'ai est que le tutoriel a été fait avec les bibliothèques anciennes de gson et retrofit 1.8.0 ...
je suivais le long bien avec retrofit2.0-beta3 jusqu'à ce que je suis tombé sur cette erreur que je cant semblent résoudre ..
Il a quelque chose à voir avec cette ligne ... (cette ligne est dans mon MainActivity.Java sous onCreate())
SCService scService = SoundCloud.getService();
scService.getRecentTracks(new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date()), new Callback<List<Track>>() {
@Override
public void onResponse(Response<List<Track>> tracks) {
Log.d("TAG", "ONRESPONSE() - -- - some else wrong");
// response.isSuccess() is true if the response code is 2xx
if (tracks.isSuccess()) {
Log.d("TAG", "ONRESPONSE()_isSuccess? - -- - some else wrong");
List<Track> track = tracks.body();
loadTracks(track);
} else {
Log.d("TAG", "some else wrong");
}
}
@Override
public void onFailure(Throwable t) {
// handle execution failures like no internet connectivity
Log.d("Error", t.getMessage());
}
});
donc je pense que le problème commence par scService Interface ..
import java.util.List;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.http.GET;
import retrofit2.http.Query;
interface SCService {
@GET("tracks?client_id=" + Config.CLIENT_ID)
public void getRecentTracks(@Query("created_at[from]") String date, Callback<List<Track>> cb);
}
Voici ma classe Soundcloud ....
import retrofit2.Retrofit;
import retrofit2.Retrofit;
public class SoundCloud {
private static final Retrofit REST_ADAPTER = new Retrofit.Builder().baseUrl(Config.API_URL).build();
private static final SCService SERVICE = REST_ADAPTER.create(SCService.class);
public static SCService getService() {
return SERVICE;
}
}
Ceci est la classe Config na pas penser qu'il serait nécessaire ...
public class Config {
public static final String CLIENT_ID = "c85f6828ae5eaf5981937ead09ef1b45";
public static final String API_URL = "https://api.soundcloud.com/";
}
J'ai été à ce tout le d ay, Toute aide serait très apprécié ..
vous devez également utiliser un @Query pour client_id et après votre s'il vous plaît Config.API_URL – Fabian
J'ai posté Config. Fichier java - il a le Config.API_URL ... Aussi comment @Query pour client_id? dans la classe d'interface? Je ne comprends pas cela ... – OzmaTis
? Client_id = "+ Config.CLIENT_ID peut être remplacé par @Query (" client_id ") String clientId – Fabian