Отображение изображений с помощью Firebase Remote Config
Я только начал использовать Remote Config в консоли Firebase. Это отличный инструмент, и он отлично работает, но я не могу понять, как я могу "протолкнуть" различные изображения (рисованные объекты) в свое приложение, используя параметры в консоли. Возможно ли это вообще, и если да, то как мне использовать это в моем приложении?
Моя текущая основная деятельность:
public class MainActivity extends AppCompatActivity {
private static final String TEAM1 = "team1";
private static final String TEAM2 = "team2";
private FirebaseRemoteConfig mFirebaseRemoteConfig;
private TextView mTeam1Text;
private TextView mTeam2Text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTeam1Text = (TextView) findViewById(R.id.team1);
mTeam2Text = (TextView) findViewById(R.id.team2);
Button fetchButton = (Button) findViewById(R.id.button);
fetchButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
fetchDiscount();
}
});
mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance();
FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder()
.setDeveloperModeEnabled(BuildConfig.DEBUG)
.build();
mFirebaseRemoteConfig.setConfigSettings(configSettings);
mFirebaseRemoteConfig.setDefaults(R.xml.remote_config_defaults);
fetchDiscount();
}
private void fetchDiscount() {
mTeam1Text.setText(mFirebaseRemoteConfig.getString(TEAM1));
mTeam2Text.setText(mFirebaseRemoteConfig.getString(TEAM2));
long cacheExpiration = 3600;
if (mFirebaseRemoteConfig.getInfo().getConfigSettings().isDeveloperModeEnabled()) {
cacheExpiration = 0;
}
mFirebaseRemoteConfig.fetch(cacheExpiration)
.addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Toast.makeText(MainActivity.this, "Vernieuwd",
Toast.LENGTH_SHORT).show();
mFirebaseRemoteConfig.activateFetched();
} else {
Toast.makeText(MainActivity.this, "Vernieuwen mislukt",
Toast.LENGTH_SHORT).show();
}
}
});
}
}
Удаленная конфигурация по умолчанию:
<?xml version="1.0" encoding="utf-8"?>
<defaultsMap>
<entry>
<key>vernieuwen</key>
<value>true</value>-
</entry>
Ребята, можете ли вы сказать мне, если это вообще возможно, и если да, то как это работает? Пожалуйста, дайте мне знать, если вам нужна дополнительная информация?
1 ответ
Firebase Remote Config предназначен для отправки простых значений в ваше приложение. Его нельзя использовать для доставки изображений.
Типичный способ справиться с этим сценарием - отделить образ от Remote Config. Например: вы можете хранить их в Firebase Storage или Firebase Hosting.
Тогда в Remote Config у вас будет параметр, который содержит URL изображения для отображения:
startupImage: https://yourapp.firebaseapp.com/path/to/todays/image.jpg