Stethoを使用するようにプロジェクトが正しく設定されています。そしてそれは以前働いていた。
しかし、私はUIの検査(要素のセクション)の私のアプリをチェックするとき、それは動作しません。リソースのような他の部分は動作します。
DevToolsは私のアプリの画面を表示しますが、Elementsセクションは空です。私はどの変更がstetho Elementsを無効にしたのか知りませんでした。
StethoとChromeの間に矛盾がありますか?もしそうなら、どのバージョンが互換性がありますか?現在、私はstehto 1.4.2とchrome v55を使用しています。
解決方法はありますか?前もって感謝します。でFacebook StethoライブラリがUIを検査するために機能しない
LoginDTO loginDTO = new LoginDTO(
etPhno.getText().toString().trim(),
etPass.getText().toString().trim()
);
ApiService service = ApiClient.getApiClient().getClient().create(ApiService.class);
Call<LoginResp> call = service.loginAPI(loginDTO);
call.enqueue(new Callback<LoginResp>() {
@Override
public void onResponse(Call<LoginResp> call, Response<LoginResp> response) {
LoginResp loginResp = response.body();
}
@Override
public void onFailure(Call<LoginResp> call, Throwable t) {
Toast.makeText(Login.this, "Error here", Toast.LENGTH_SHORT).show();
}
});
:改造は以下のコードを参照して使用することを今
public class ApiClient extends Application {
private static ApiClient apiClient = null; //singleton Object
String apiURL = "http://your.url/";
public static ApiClient getApiClient() {//getter for object
if (apiClient == null)
apiClient = new ApiClient();
return apiClient;
}
@Override
public void onCreate() {
super.onCreate();
Stetho.initializeWithDefaults(this);
}
public Retrofit getClient() {//Retrofit instance
int myTime = 15;
OkHttpClient.Builder okHttpBuilder = new OkHttpClient.Builder()
.connectTimeout(myTime, TimeUnit.SECONDS)
.readTimeout(myTime, TimeUnit.SECONDS)
.writeTimeout(myTime, TimeUnit.SECONDS)
.addNetworkInterceptor(new StethoInterceptor());
Retrofit.Builder builder = new Retrofit.Builder()
.baseUrl(apiURL)
.client(okHttpBuilder.build())
.addConverterFactory(GsonConverterFactory.create());
return builder.build();
}
}
:以下のコードを参照してくださいStethoネットワークインターセプタインスタンスとともにレトロフィットのシングルトンデザインパターンを実現するために
と入力してください。本当に強力で包括的なAndroid Profilerのためにstethoを使用する必要はありません – Fartab