{ "expo": { "name": "Streamyfin", "slug": "streamyfin", "version": "0.28.0", "orientation": "default", "icon": "./assets/images/icon.png", "scheme": "streamyfin", "userInterfaceStyle": "dark", "jsEngine": "hermes", "assetBundlePatterns": ["**/*"], "ios": { "requireFullScreen": true, "infoPlist": { "NSCameraUsageDescription": "The app needs access to your camera to scan barcodes.", "NSMicrophoneUsageDescription": "The app needs access to your microphone.", "UIBackgroundModes": ["audio", "fetch"], "NSLocalNetworkUsageDescription": "The app needs access to your local network to connect to your Jellyfin server.", "NSAppTransportSecurity": { "NSAllowsArbitraryLoads": true }, "UISupportsTrueScreenSizeOnMac": true, "UIFileSharingEnabled": true, "LSSupportsOpeningDocumentsInPlace": true }, "config": { "usesNonExemptEncryption": false }, "supportsTablet": true, "bundleIdentifier": "com.fredrikburmester.streamyfin", "icon": { "dark": "./assets/images/icon-plain.png", "light": "./assets/images/icon-ios-light.png", "tinted": "./assets/images/icon-ios-tinted.png" } }, "android": { "jsEngine": "hermes", "versionCode": 55, "adaptiveIcon": { "foregroundImage": "./assets/images/icon-plain.png", "monochromeImage": "./assets/images/icon-mono.png", "backgroundColor": "#464646" }, "package": "com.fredrikburmester.streamyfin", "permissions": [ "android.permission.FOREGROUND_SERVICE", "android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK", "android.permission.WRITE_SETTINGS" ], "googleServicesFile": "./google-services.json" }, "plugins": [ "@react-native-tvos/config-tv", "expo-router", "expo-font", [ "react-native-video", { "enableNotificationControls": true, "enableBackgroundAudio": true, "androidExtensions": { "useExoplayerRtsp": false, "useExoplayerSmoothStreaming": false, "useExoplayerHls": true, "useExoplayerDash": false } } ], [ "expo-build-properties", { "ios": { "deploymentTarget": "15.6", "useFrameworks": "static" }, "android": { "compileSdkVersion": 35, "targetSdkVersion": 35, "buildToolsVersion": "35.0.0", "kotlinVersion": "2.0.21", "minSdkVersion": 24, "usesCleartextTraffic": true, "packagingOptions": { "jniLibs": { "useLegacyPackaging": true } }, "useAndroidX": true, "enableJetifier": true } } ], [ "expo-screen-orientation", { "initialOrientation": "DEFAULT" } ], [ "expo-sensors", { "motionPermission": "Allow Streamyfin to access your device motion for landscape video watching." } ], "expo-localization", "expo-asset", [ "react-native-edge-to-edge", { "android": { "parentTheme": "Material3" } } ], ["react-native-bottom-tabs"], ["./plugins/withChangeNativeAndroidTextToWhite.js"], ["./plugins/withAndroidManifest.js"], ["./plugins/withTrustLocalCerts.js"], ["./plugins/withGradleProperties.js"], ["./plugins/withRNBackgroundDownloader.js"], [ "expo-splash-screen", { "backgroundColor": "#2e2e2e", "image": "./assets/images/StreamyFinFinal.png", "imageWidth": 100 } ], [ "expo-notifications", { "icon": "./assets/images/notification.png", "color": "#9333EA" } ] ], "experiments": { "typedRoutes": true }, "extra": { "router": { "origin": false }, "eas": { "projectId": "e79219d1-797f-4fbe-9fa1-cfd360690a68" } }, "owner": "streamyfin", "runtimeVersion": { "policy": "appVersion" }, "updates": { "url": "https://u.expo.dev/e79219d1-797f-4fbe-9fa1-cfd360690a68" }, "newArchEnabled": false } }