Skip to content

Commit

Permalink
Fix potential crash from fresco thank to ShawnDongAi on stackoverflow
Browse files Browse the repository at this point in the history
Disabling native code on exception seems to fix this issue. see:

facebook/fresco#2381 (comment)
  • Loading branch information
fat-tire committed Oct 24, 2019
1 parent cad311e commit 46e1c9e
Showing 1 changed file with 18 additions and 6 deletions.
24 changes: 18 additions & 6 deletions src/main/java/org/havenapp/main/HavenApp.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,21 +19,22 @@

import android.util.Log;

import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatDelegate;
import androidx.multidex.MultiDexApplication;

import com.evernote.android.job.JobManager;
import com.facebook.drawee.backends.pipeline.Fresco;
import com.facebook.imagepipeline.core.ImagePipelineConfig;
import com.facebook.imagepipeline.decoder.SimpleProgressiveJpegConfig;
import com.facebook.imagepipeline.nativecode.ImagePipelineNativeLoader;

import org.havenapp.main.database.HavenEventDB;
import org.havenapp.main.service.HavenJobCreator;
import org.havenapp.main.service.WebServer;

import java.io.IOException;

import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatDelegate;
import androidx.multidex.MultiDexApplication;

public class HavenApp extends MultiDexApplication {


Expand All @@ -54,14 +55,25 @@ public void onCreate() {

mPrefs = new PreferenceManager(this);

ImagePipelineConfig config = ImagePipelineConfig.newBuilder(this)
ImagePipelineConfig.Builder b = ImagePipelineConfig.newBuilder(this);
ImagePipelineConfig config = b
.setProgressiveJpegConfig(new SimpleProgressiveJpegConfig())
.setResizeAndRotateEnabledForNetwork(true)
.setDownsampleEnabled(true)
.build();

Fresco.initialize(this,config);


try {
ImagePipelineNativeLoader.load();
} catch (UnsatisfiedLinkError e) {
Fresco.shutDown();
b.experiment().setNativeCodeDisabled(true);
config = b.build();
Fresco.initialize(this, config);
e.printStackTrace();
}

AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);

if (mPrefs.getRemoteAccessActive())
Expand Down

0 comments on commit 46e1c9e

Please sign in to comment.