Links

Inject Android Image Loader

You could inject an Android image loader that can be one of the predefined Glide or Picasso or your custom implementation of the com.firework.imageloading.ImageLoader interface using your own solution.

Inject the Glide

Step 1: add the library dependency inside the dependencies block in the firework.gradle.
dependencies {
implementation "com.firework.external.imageloading:glide:+"
...
}
configurations.all {
resolutionStrategy.eachDependency { details ->
...
if (details.requested.group == 'com.firework.external.imageloading' && details.requested.name == 'glide') {
details.useVersion rootProject.ext.get("fwNativeVersion")
}
}
}
Step 2: add the following codes to the MainApplication class
Kotlin
Java
import com.firework.imageloading.glide.GlideImageLoaderFactory
import com.fireworksdk.bridge.reactnative.FWReactNativeSDK
class MainApplication: ReactApplication() {
...
override fun onCreate() {
super.onCreate()
...
FWReactNativeSDK.setImageLoader(GlideImageLoaderFactory.createInstance(this))
}
}
import com.firework.imageloading.glide.GlideImageLoaderFactory;
import com.fireworksdk.bridge.reactnative.FWReactNativeSDK;
public class MainApplication extends Application implements ReactApplication {
...
@Override
public void onCreate() {
super.onCreate();
...
FWReactNativeSDK.INSTANCE.setImageLoader(GlideImageLoaderFactory.createInstance(this));
}
}

Inject the Picasso

Step 1: add the library dependency inside the dependencies block in the firework.gradle.
dependencies {
implementation "com.firework.external.imageloading:picasso:+"
...
}
configurations.all {
resolutionStrategy.eachDependency { details ->
...
if (details.requested.group == 'com.firework.external.imageloading' && details.requested.name == 'picasso') {
details.useVersion rootProject.ext.get("fwNativeVersion")
}
}
}
Step 2: add the following codes to the MainApplication class
Kotlin
Java
import com.firework.imageloading.picasso.PicassoImageLoaderFactory
import com.fireworksdk.bridge.reactnative.FWReactNativeSDK
class MainApplication: ReactApplication() {
...
override fun onCreate() {
super.onCreate()
...
FWReactNativeSDK.setImageLoader(PicassoImageLoaderFactory.createInstance(this))
}
}
import com.firework.imageloading.picasso.PicassoImageLoaderFactory;
import com.fireworksdk.bridge.reactnative.FWReactNativeSDK;
public class MainApplication extends Application implements ReactApplication {
...
@Override
public void onCreate() {
super.onCreate();
...
FWReactNativeSDK.INSTANCE.setImageLoader(PicassoImageLoaderFactory.createInstance(this));
}
}