1 package host.exp.exponent; 2 3 4 import com.facebook.react.ReactPackage; 5 6 import java.util.Arrays; 7 import java.util.List; 8 9 import expo.core.interfaces.Package; 10 import expo.loaders.provider.interfaces.AppLoaderPackagesProviderInterface; 11 import expo.modules.ads.admob.AdMobPackage; 12 import expo.modules.analytics.segment.SegmentPackage; 13 import expo.modules.appauth.AppAuthPackage; 14 import expo.modules.backgroundfetch.BackgroundFetchPackage; 15 import expo.modules.barcodescanner.BarCodeScannerPackage; 16 import expo.modules.camera.CameraPackage; 17 import expo.modules.constants.ConstantsPackage; 18 import expo.modules.contacts.ContactsPackage; 19 import expo.modules.facedetector.FaceDetectorPackage; 20 import expo.modules.filesystem.FileSystemPackage; 21 import expo.modules.font.FontLoaderPackage; 22 import expo.modules.gl.GLPackage; 23 import expo.modules.google.signin.GoogleSignInPackage; 24 import expo.modules.localauthentication.LocalAuthenticationPackage; 25 import expo.modules.localization.LocalizationPackage; 26 import expo.modules.location.LocationPackage; 27 import expo.modules.medialibrary.MediaLibraryPackage; 28 import expo.modules.payments.stripe.StripePackage; 29 import expo.modules.permissions.PermissionsPackage; 30 import expo.modules.print.PrintPackage; 31 import expo.modules.sensors.SensorsPackage; 32 import expo.modules.sms.SMSPackage; 33 import expo.modules.taskManager.TaskManagerPackage; 34 import expolib_v1.okhttp3.OkHttpClient; 35 36 // Needed for `react-native link` 37 // import com.facebook.react.ReactApplication; 38 39 public class MainApplication extends ExpoApplication implements AppLoaderPackagesProviderInterface<ReactPackage> { 40 41 @Override 42 public boolean isDebug() { 43 return BuildConfig.DEBUG; 44 } 45 46 // Needed for `react-native link` 47 public List<ReactPackage> getPackages() { 48 return Arrays.<ReactPackage>asList( 49 // Add your own packages here! 50 // TODO: add native modules! 51 52 // Needed for `react-native link` 53 // new MainReactPackage() 54 ); 55 } 56 57 public List<Package> getExpoPackages() { 58 return Arrays.<Package>asList( 59 new CameraPackage(), 60 new ConstantsPackage(), 61 new SensorsPackage(), 62 new FileSystemPackage(), 63 new FaceDetectorPackage(), 64 new GLPackage(), 65 new GoogleSignInPackage(), 66 new PermissionsPackage(), 67 new SMSPackage(), 68 new PrintPackage(), 69 new ConstantsPackage(), 70 new MediaLibraryPackage(), 71 new SegmentPackage(), 72 new FontLoaderPackage(), 73 new LocationPackage(), 74 new ContactsPackage(), 75 new BarCodeScannerPackage(), 76 new AdMobPackage(), 77 new StripePackage(), 78 new LocalAuthenticationPackage(), 79 new LocalizationPackage(), 80 new AppAuthPackage(), 81 new TaskManagerPackage(), 82 new BackgroundFetchPackage() 83 ); 84 } 85 86 @Override 87 public String gcmSenderId() { 88 return getString(R.string.gcm_defaultSenderId); 89 } 90 91 @Override 92 public boolean shouldUseInternetKernel() { 93 return BuildVariantConstants.USE_INTERNET_KERNEL; 94 } 95 96 public static OkHttpClient.Builder okHttpClientBuilder(OkHttpClient.Builder builder) { 97 // Customize/override OkHttp client here 98 return builder; 99 } 100 } 101