sentry-react-native
sentry-react-native copied to clipboard
[iOS] Gallery content not masked when using react-native-image-crop-picker
What React Native libraries do you use?
Expo (mobile only)
Are you using sentry.io or on-premise?
sentry.io (SaS)
@sentry/react-native SDK Version
6.18.1
How does your development environment look like?
React Native project using react-native-image-crop-picker for image selection and cropping.
SDK updated recently.
Sentry.init()
Sentry.init({
dsn: 'https://[email protected]/...'
// other options
});
Steps to Reproduce
- Open an iOS app using react-native-image-crop-picker.
- Trigger the image picker to upload a profile picture (gallery opens).
- Observe the replay recording.
Expected Result
The iOS gallery should not be captured in Session Replay (either excluded or masked).
Actual Result
The iOS gallery content is visible in the replay and not masked. Sentry.Mask is working inside the app but not applied when the gallery opens.
Please check the Zendesk ticket or Linear ticket for the replay link provided by the customer.
- SDK version - 6.20.0
- Sentry init
Sentry.init({
dsn: senrty_dsn,
tracesSampleRate: 0.8,
environment: 'production',
appHangTimeoutInterval: 5,
replaysSessionSampleRate: 1.0,
replaysOnErrorSampleRate: 1.0,
integrations: [Sentry.mobileReplayIntegration({ maskAllText: false,
maskAllImages: false,
maskAllVectors: false,})],
beforeSend(event , hint){
console.log(event,hint,"senrtylog");
}
// uncomment the line below to enable Spotlight (https://spotlightjs.com)
// enableSpotlight: __DEV__,
});
- metro.config -
const {getDefaultConfig, mergeConfig} = require('@react-native/metro-config');
const {withSentryConfig} = require('@sentry/react-native/metro');
/**
* Metro configuration
* https://reactnative.dev/docs/metro
*
* @type {import('@react-native/metro-config').MetroConfig}
*/
const config = {};
module.exports = withSentryConfig(withSentryConfig(
mergeConfig(getDefaultConfig(__dirname), config),
));