I am fixing a incompatibility issue related to AndroidX by adding 2 lines to gradle.properties under android for my RN 0.59.5 project.
android.useAndroidX=true
android.enableJetifier=true
Now there is another error with run-android related to react-native-gesture-handler. Then I yarn remove the current react-native-gesture-handler of 1.2.0 and add it back. The new version is 1.3.0. Here is the error:
Task :react-native-gesture-handler:compileDebugJavaWithJavac
C:\D\code\js\emps_app\node_modules\react-native-gesture-handler\android\src\main\java\com\swmansion\gesturehandler\react\RNGestureHandlerEvent.java:3: error: package android.support.v4.util does not exist
import android.support.v4.util.Pools;
^
C:\D\code\js\emps_app\node_modules\react-native-gesture-handler\android\src\main\java\com\swmansion\gesturehandler\react\RNGestureHandlerEvent.java:19: error: package Pools does not exist
private static final Pools.SynchronizedPool EVENTS_POOL =
^
C:\D\code\js\emps_app\node_modules\react-native-gesture-handler\android\src\main\java\com\swmansion\gesturehandler\react\RNGestureHandlerStateChangeEvent.java:3: error: package android.support.v4.util does not exist
import android.support.v4.util.Pools;
^
C:\D\code\js\emps_app\node_modules\react-native-gesture-handler\android\src\main\java\com\swmansion\gesturehandler\react\RNGestureHandlerStateChangeEvent.java:19: error: package Pools does not exist
private static final Pools.SynchronizedPool EVENTS_POOL =
^
C:\D\code\js\emps_app\node_modules\react-native-gesture-handler\android\src\main\java\com\swmansion\gesturehandler\react\RNGestureHandlerEvent.java:20: error: package Pools does not exist
new Pools.SynchronizedPool<>(TOUCH_EVENTS_POOL_SIZE);
^
C:\D\code\js\emps_app\node_modules\react-native-gesture-handler\android\src\main\java\com\swmansion\gesturehandler\react\RNGestureHandlerStateChangeEvent.java:20: error: package Pools does not exist
new Pools.SynchronizedPool<>(TOUCH_EVENTS_POOL_SIZE);
^
Note: C:\D\code\js\emps_app\node_modules\react-native-gesture-handler\android\src\main\java\com\swmansion\gesturehandler\react\RNGestureHandlerButtonViewManager.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
6 errors
Task :react-native-gesture-handler:compileDebugJavaWithJavac FAILED
The error is related 6 packages missing and I guess it is still related to Androidx. But I have no clue how to fix it. There is an issue post#510 suggesting downgraded to version 1.0.5 for fixing but I wouldn’t like to use such an old version.
same issue on rn 0.60
same issue after refactoring support library to androidx
react-native@0.59.9
Solved by rolling back to appcompat-v7:28.0.0 Android support libraries and
‘yarn upgrade –pattern react-native’
I was able to follow this documentation.
1º Click in react-native-gesture-handler project on android studio
2º Click in Refactor on top
3º Click Migrate to AndroidX.
@zmGitHub
npm i jetifier
npx jetify
fixed it for me on rn 0.6
This fixed it for me. Thank you !
@boazeb
Amazing!! It works 🙂
What did work is to downgrade React Native and do following:
npm install react-native@0.59
and then
Warning: watch out “npm audit fix” since it will return react-native version to 0.60 – the latest for this moment.
1.- Add jetifier as dev dependency
yarn add jetifier --dev
2.- Add a task in package.json inside of “scripts” tag,
3.- Run as yarn
yarn jetify
nothing Above Works
try adding this in android/app/build.gradle -> dependencies {} . It solved my problem after upgrading RN to v0.60.4
implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
Placed
android.useAndroidX=true
android.enableJetifier=true
in gadle.properties
and
npm i jetifier
npx jetify
fixed it for me on rn 0.59.9
0.59.5 Works here! Thanks!!