react-native-plaid-link-sdk icon indicating copy to clipboard operation
react-native-plaid-link-sdk copied to clipboard

How can i use this dependencies in expo app

Open dhavalbhuva opened this issue 3 years ago • 3 comments

Hello,

I am trying this dependencies use in expo react-native app. But i still have issue.

Android [Unhandled promise rejection: TypeError: null is not an object (evaluating '_reactNative.NativeModules.PlaidAndroid.startLinkActivityForResult')] at http://192.168.1.16:19000/index.bundle?platform=android&dev=true&hot=false&minify=false:270318:55 in _callee$ at node_modules/react-native-plaid-link-sdk/dist/PlaidLink.js:4:83 in fulfilled at node_modules/react-native-plaid-link-sdk/dist/PlaidLink.js:10:0 in <global> at node_modules/react-native-plaid-link-sdk/dist/PlaidLink.js:7:14 in <anonymous> at http://192.168.1.16:19000/index.bundle?platform=android&dev=true&hot=false&minify=false:270393:14 in onPress at node_modules/react-native/Libraries/Pressability/Pressability.js:697:17 in _performTransitionSideEffects at node_modules/react-native/Libraries/Pressability/Pressability.js:634:6 in _receiveSignal at node_modules/react-native/Libraries/Pressability/Pressability.js:528:8 in responderEventHandlers.onResponderRelease

IOS [Unhandled promise rejection: TypeError: null is not an object (evaluating '_reactNative.NativeModules.RNLinksdk.create')] at node_modules/side-channel/index.js:72:5 in channel.get at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:28234:31 in invoke at node_modules/side-channel/index.js:30:3 in listGetNode at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:32926:8 in tryCallTwo at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:270696:35 in <unknown> at node_modules/side-channel/index.js:45:8 in listSet at node_modules/get-intrinsic/index.js:6:4 in <global> at node_modules/react-native/Libraries/Animated/AnimatedMock.js:43:0 in <global> at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:67401:44 in _receiveSignal at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:67308:33 in onResponderRelease at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:11043:25 in executeDispatchesInOrder at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:11566:21 in forEachAccumulated at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:12282:35 in batchedUpdates at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:12374:22 in _receiveRootNodeIDEvent at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:3519:35 in __callFunction at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:3473:14 in __guard at http://127.0.0.1:19000/index.bundle?platform=ios&dev=true&hot=false&minify=false:3246:20 in callFunctionReturnFlushedQueue

Thank you!

dhavalbhuva avatar Jun 30 '22 09:06 dhavalbhuva

You can't, you have to implement it as webview. I had to face the same limitation and at the beginning of development I used https://github.com/burstware/expo-plaid-link, but at some point in the development stage, I noticed that this hasn't any handle method for the OAuth banks, so I decided to develop by myself a component to handle all banks, of course, I've based my work on this repository.

bardaxx avatar Aug 01 '22 10:08 bardaxx

You can't isn't really true here. You can use it, but you have to use Expo dev clients and not Expo Go. It's unfortunate that the Plaid SDK doesn't have a config plugin, because that would make it as easy as:

# Create an Expo app
$ expo init PlaidApp
$ cd ./PlaidApp

# Install Expo dev clients and Plaid SDK
$ expo install expo-dev-client react-native-plaid-link-sdk

# Add the Plaid SDK to your config plugin list in `app.json`
# see: https://docs.expo.dev/versions/latest/config/app/#plugins

# Run it on your phone/simulator
$ expo run:ios --device
$ expo run:android --device

But until then, you can follow this guide: https://www.aronberezkin.com/posts/how-to-integrate-plaid-sdk-to-react-native-using-expo-config-plugins

byCedric avatar Aug 04 '22 20:08 byCedric

Brillant @byCedric thanks for sharing this!

bardaxx avatar Aug 05 '22 11:08 bardaxx