39 lines
1.2 KiB
Java
39 lines
1.2 KiB
Java
package com.example.xmlserializationdemo;
|
|
|
|
import okhttp3.OkHttpClient;
|
|
import okhttp3.logging.HttpLoggingInterceptor;
|
|
import retrofit2.Retrofit;
|
|
import retrofit2.converter.simplexml.SimpleXmlConverterFactory;
|
|
|
|
public class RetrofitManager {
|
|
private static RetrofitManager mInstance = new RetrofitManager();
|
|
|
|
private MyApiService myApiService;
|
|
|
|
private RetrofitManager() {
|
|
// For debug
|
|
HttpLoggingInterceptor logging = new HttpLoggingInterceptor();
|
|
logging.setLevel(HttpLoggingInterceptor.Level.BODY);
|
|
|
|
// Custom OkHttp Client
|
|
OkHttpClient.Builder okHttpClient = new OkHttpClient.Builder();
|
|
okHttpClient.addInterceptor(logging);
|
|
|
|
Retrofit retrofit = new Retrofit.Builder()
|
|
.baseUrl("https://data.ntpc.gov.tw/") // API domain
|
|
.client(okHttpClient.build())
|
|
.addConverterFactory(SimpleXmlConverterFactory.create())
|
|
.build();
|
|
|
|
myApiService = retrofit.create(MyApiService.class);
|
|
}
|
|
|
|
public static RetrofitManager getInstance() {
|
|
return mInstance;
|
|
}
|
|
|
|
public MyApiService getMyApiService() {
|
|
return myApiService;
|
|
}
|
|
}
|