In a React app, I need to press the back button 2 times in order to go to the previous page

In case you have such an issue, and verify that you don’t call history.push() 2 times, check your content for an iframe. TL; DR: React tries to minimize re-rendering and will reuse the iframe element by just changing its src. This will update the history object, which is apparently shared with the main page (and… Continue reading In a React app, I need to press the back button 2 times in order to go to the previous page

React Drag And Drop not working with AnyDesk

We had a very strange issue with a project we work on. Our React app supports drag-and-drop of devices on a floorplan, using react-dnd. Everything works just fine locally and on our servers, but once the UI is deployed to the production machine (that is accessible via intranet), the drag-and-drop stopped working. Debugging the production… Continue reading React Drag And Drop not working with AnyDesk

React Native Shadow is Missing on iOS but is Okay on Android

In one of our projects, some of the items that had a shadow, was working just fine on Android, but the shadow was missing on iOS. After investigating it, it turned out to be related to the items that had overflow: ‘hidden’, which on iOS resulted in shadow being trimmed. Turns out on iOS, the… Continue reading React Native Shadow is Missing on iOS but is Okay on Android

SentryError: Native Client is not available, can’t start on native when updating expo-cli to 4.x.x (from version 3.22.3)

TL;DR: Update your metro.config.js to use @expo/metro-config based on the latest guidelines (SDK 40+) – It’s funny when you encounter an error in a project, and after spending a lot of effort researching it, to find out that the cause is the same with a totally different error on a very different project. In my… Continue reading SentryError: Native Client is not available, can’t start on native when updating expo-cli to 4.x.x (from version 3.22.3)

Icons Not Loaded After Updating ReactNative Expo to Version 40

TL; DR: If you’re loading SVGs, check into your metro.config.js and see if you’re using the getDefaultConfig from ‘@expo/metro-config’. If you’re requiring it from ‘metro-config’, you should update your code based on the one below. More info in the readme of ‘react-native-svg-transformer‘ Recently I’ve had an issue with updating a project I was working on… Continue reading Icons Not Loaded After Updating ReactNative Expo to Version 40

Messing with Expo Permissions caused ImagePicker to misbehave

Have you seen the following alert? Sorry, we need media library permissions to make this work! Well.. me too! 🙂 And I’ve seen this error despite the fact that I’ve had both the “CAMERA” and “MEDIA_LIBRARY” permissions added to my android.permissions array. Googling didn’t help much, because it just led me to either the expo… Continue reading Messing with Expo Permissions caused ImagePicker to misbehave

Updating a React Native/Expo image file does not update the visualization of this image everywhere in the app

I’ve had an interesting problem when saving and updating images in a React Native application built with Expo. I’m building an app that has contacts and images (that are either taken from the phone contact entry or picked from the gallery). The issue was that editing the image at one place and saving it, would… Continue reading Updating a React Native/Expo image file does not update the visualization of this image everywhere in the app

Android Emulator Losing Internet Connectivity

Spoiler: When having Internet connectivity issues, make sure that Android Studio is running. (because it acts as a proxy for the emulator) So I’ve had a reoccurring issue where my Android Emulator device would lose connectivity from time to time, and to fix it I went to delete it and create a new device from… Continue reading Android Emulator Losing Internet Connectivity