Fuzzy match content types (#1320)
Fixes #1288
diff --git a/lottie/src/main/java/com/airbnb/lottie/network/NetworkFetcher.java b/lottie/src/main/java/com/airbnb/lottie/network/NetworkFetcher.java
index c3d31c7..028ee95 100644
--- a/lottie/src/main/java/com/airbnb/lottie/network/NetworkFetcher.java
+++ b/lottie/src/main/java/com/airbnb/lottie/network/NetworkFetcher.java
@@ -141,20 +141,16 @@
// in the result which is more useful than failing here.
contentType = "application/json";
}
- switch (contentType) {
- case "application/zip":
- Logger.debug("Handling zip response.");
- extension = FileExtension.ZIP;
- file = networkCache.writeTempCacheFile(connection.getInputStream(), extension);
- result = LottieCompositionFactory.fromZipStreamSync(new ZipInputStream(new FileInputStream(file)), url);
- break;
- case "application/json":
- default:
- Logger.debug("Received json response.");
- extension = FileExtension.JSON;
- file = networkCache.writeTempCacheFile(connection.getInputStream(), extension);
- result = LottieCompositionFactory.fromJsonInputStreamSync(new FileInputStream(new File(file.getAbsolutePath())), url);
- break;
+ if (contentType.contains("application/zip")) {
+ Logger.debug("Handling zip response.");
+ extension = FileExtension.ZIP;
+ file = networkCache.writeTempCacheFile(connection.getInputStream(), extension);
+ result = LottieCompositionFactory.fromZipStreamSync(new ZipInputStream(new FileInputStream(file)), url);
+ } else {
+ Logger.debug("Received json response.");
+ extension = FileExtension.JSON;
+ file = networkCache.writeTempCacheFile(connection.getInputStream(), extension);
+ result = LottieCompositionFactory.fromJsonInputStreamSync(new FileInputStream(new File(file.getAbsolutePath())), url);
}
if (result.getValue() != null) {