I want to add TouchID / FingerprintScanner support to an app that I'm developing with React-Native#0.54+ and all packages that I use I cannot link the dependencies to it via react-native link (or even without package-name...).
I'm running it via 'create-react-native-app' and using Expo Client.
Any thoughts / help?
i think you shoud detach expo.
working with Expo gives you lots of benefit... but deeper you want to achieve, Expo will make you struggle.
I suggest you to deatch Expo and work with libraries like
https://github.com/naoufal/react-native-touch-id
or
https://github.com/hieuvp/react-native-fingerprint-scanner
Its worth pointing out that Expo supports fingerprint scanning with their LocalAuthentication module. There's an example snack available in their documentation
there is quite a good example here so have a look. It solved my problem.
You can use Expo's fingerprint reader library in ejected apps too. I explained it here https://stackoverflow.com/a/64929151/7477198
Or it is possible to use libraries like https://github.com/hieuvp/react-native-fingerprint-scanner#readme
Related
I am trying to add login via Google account to my application. I have encountered a problem. Expo offers two solutions.
Google (https://docs.expo.dev/versions/latest/sdk/google/) - This can only be used in a development environment. I have used it but it does not work in a standalone application, in my case it throws the error "redirect_uri_mismatch" /
GoogleSignIn (https://docs.expo.dev/versions/latest/sdk/google-sign-in/) - Doesn't work in the emulator so I can't add it to the application because I can't fix potential errors.
My question is what the hell library should I use?
I have already tried expo eject and use Google Sign In from React Native. However I got an error that Expo does not support custom native modules. Help!
Thanks in advance.
Edit: SDK 44 Release
With the release of SDK 44, expo-google-sign-in has now been deprecated in favour of expo-auth-session OR #react-native-google-signin/google-signin packages. If you want to use the latter, you will need to follow the custom development client path.
Pre SDK 44
We've implemented Google-Sign-In using the expo-google-sign-in library. Implementation is easy enough, but you will have to test using a standalone build of your application which is the only slightly annoying piece of the puzzle.
Building a standalone build is now even easier with EAS (not sure if you have an account - but if you don't, I would highly recommend it.)
I've used a GoogleSignIn library, but I also have pro tip for everyone who will implement it.
Instead of building a project every time when you will need to test it, you can build it once and then just use upadate OTA, it's much faster.
I want my app to be able to connect to a Wifi network whose SSID and password are already gonna be hardcoded in the app. Hope there is a way to do this in expo. I know I could use something like https://www.npmjs.com/package/react-native-wifi-reborn but probably do not want to eject out of expo.
Answering my own question here for anyone who's facing the same problem.
With the latest Expo updates now we can add react-native packages to the managed expo workflow without ever ejecting. What that means is we can install https://www.npmjs.com/package/react-native-wifi-reborn to our Expo project.
We'll just be needing to install expo-dev-client to our project and then use EAS build. Consider reading this guide to follow the exact steps needed https://docs.expo.dev/development/getting-started/
Here is a little blog post I wrote discussing about the same.
https://blog.chiragsrvstv.dev/install-native-modules-with-expo
I am new to react native and expo.
This is the module i am looking at: https://github.com/leesiongchan/react-native-esc-pos
I want to build an app that can print using bluetooth thermal printer. I am not sure if i should build it using react native or expo. Please advise me.
Thank you.
Expo has its own limitations and there are even some bugs there too, Its good for quick development as the documentation suggests the same that it is good to get you started with development within minutes without much hustle. In my opinion, React Native CLI is most of the time the best option even if you are new to react native development. Because of the following reasons
You will learn a lot as you will get your hands dirty in core react native app development.
You won't have to deal with expo limitations
You won't have to be dependent on expo tools
Any Library which requires linking or contains native modules will not work with the expo.
The library you mentioned uses many native modules and usually these type of libraries are not supported and that is the reason why they've built their own APIs and Native Components you can read this,
the developer has not mentioned Expo support anywhere on the docs but still You can open an issue on GitHub and ask the developer if it supports EXPO platform or not, or maybe instead of asking you can try the library yourself and you will find out if its working or not,
Might be a duplicate, didn't find one tho.
I started a new application with the react-native-cli.
I want to use expo for development purpose:
Running on devices through Expo.
Publishing through Expo.
Is such a thing possible?
Copy pasting your 2 questions in Google and the first result...
1.
https://docs.expo.io/versions/latest/guides/testing-on-devices/
2.
https://docs.expo.io/versions/latest/workflow/publishing/
any questions left???
No, its not possible, in the docs its explicitly mentioned you can choose either the expo path or bare react native path. And if you choose expo you can eject from it to pure react native but cant go vice versa because the expo wrapper cant be implemented on the bare app.
so you have to again build an app with expo-cli to use expo publishing facilities etc.
but if you want to use expo modules in bare react native app you can do by using react-native-unimodules .
rn-unimodules
hope it helps. feel free for doubts
If anyone is ever looking for the answer it is stated here:
https://docs.expo.io/versions/v35.0.0/introduction/managed-vs-bare/#bare-workflow
It clearly states that in "bare" workflow you cant use the build services of Expo.
I have an existing React-native project which I'm trying to move to expo
I have followed the steps described here to do this. I have complete all the steps in the article, yet when I start the project I run into the following error.
From my research what I understood is that, a libReactNativeLocalization.a file is missing from somewhere.
Here is the library I'm using for localization.
What am I doing wrong?
With Expo, you can't react-native-link custom native modules. You write just JavaScript (unless you eject, in which case you're in a roughly similar situation before you tried to convert to Expo).
The way you can do localization with Expo is to use these functions:
https://docs.expo.io/versions/v17.0.0/sdk/util.html#expoutilgetcurrentlocaleasync
There isn't a way to use the native module you link to without ejecting unfortunately.
Good luck!