Я пытаюсь загрузить изображение профиля от Firebase пользователя, сохраняя его URL-адрес в SharedPreferences из основного действия и направляя его значение в другое действие, которое содержит нужный мне ImageView. заселить.
Это код в MainActivity :
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RC_SIGN_IN) {
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (resultCode == RESULT_OK) {
isRegistered = true;
if (user != null) {
SharedPreferences.Editor userEditor = getSharedPreferences(USER_KEY, MODE_PRIVATE).edit();
userEditor.putBoolean(REGISTERED, isRegistered);
userEditor.putString(AccountActivity.USER_NAME_KEY, user.getDisplayName());
userEditor.putString(AccountActivity.USER_EMAIL_KEY, user.getEmail());
userEditor.putString(AccountActivity.USER_PHONE_NUMBER, user.getPhoneNumber());
userEditor.putString(AccountActivity.USER_PHOTO_KEY, (user.getPhotoUrl().toString()));
userEditor.apply();
}
}
}
}
и это код, который я получаю в AccountActivity
if (preferences != null) {
ImageView userImage = findViewById(R.id.user_image);
String img_url = preferences.getString(USER_PHOTO_KEY, "");
Picasso.with(this).load(img_url).into(userImage);
}
Сообщение об ошибке в журнале, говорящее
Пикассо обнаружил неподдерживаемый OkHttp в пути к классам.
Чтобы использовать OkHttp с этой версией Picasso, вам потребуется:
1. com.squareup.okhttp: ohttp: 1.6.0 (или новее)
2. com.squareup.okhttp: okhttp-urlconnection: 1.6.0 (или новее)
Обратите внимание, что OkHttp 2.0.0+ поддерживается!
Я включил Okhttp зависимость в мой проект.