Alternative to giftedchat react native - react-native

In all the react-native tutorials I have seen so far, on building a chat app, I see them using gifted chat.
After installing the library, it is really buggy and slow. Below are some things I experience when using it.
When I have messages over 100, it takes time to load my chats.
When I press the send button, It takes time as well before updating the chat list(about a second).
Are there any other alternatives to gifted chat?

Slowness or fastness would depend on the "backend" (database and/or server) you are integrating your chat app (or component) with. Firebase (from Google) FireStore or Firebase Realtime DB would be one of the best options to choose from. This might help you in integrating Firebase DB with gifted-chat.

react-native-gifted-chat seem not to be actively maintained.
I found react-chat-elements I did not try it yet.
If you found something else please leave a comment.
good look with your search.

Related

Is it possible to put nuxt.js (pwa or spa) in the appstore?

The truth is, since nuxt works poorly in some native access, such as accessing the file manager or sending notifications to iPhone users, I am not sure if appstore supports nuxt projects or not. That's why before I start the new project, I had a question whether it is possible to put a nuxt project in appstore or not? (If the answer is yes, please guide how to do it)
Or using something like react or react native is a better option ?
Any answer from you would be greatly appreciated
As per Apple’s App Store policy-
“Your app should include features, content, and UI that elevate it beyond a repackaged website. If your app is not particularly useful, unique, or “app-like,” it does not belong on the App Store.” 
So no, you can’t throw a PWA in the App Store.
Google is far more accommodating in this respect, and welcomes PWAs in the Google Play Store. They also have their own publishing guidelines, so you’d want to read up on them.
React Native is an option for both the App Store and Play Store, so I’d recommend that if you’re comfortable with it.
First off, Nuxt is a meta-framework of Vue.
Meaning that it is a superset of Vue, bringing SSR/SSG capabilities + DX features.
It's clearly not a "mobile app-frienly starter" because it's still aimed towards Web.
You could use some modules to bring mobile capabilities like this one: https://ionic.roe.dev/
Here is a video on how to use Ionic + Vue + Vite overall: https://youtu.be/-FwQ6c6OreQ
As for the PWA approach, you can use a TWA app for sure but it's quite a stretch as you can guess.
You've already asked a similar question here btw, not a lot changed since then.
Overall, if you have bigger mobile needs you can always look into webview tools (Ionic, Cordova etc), React Native, Flutter or directly into Kotlin/Swift. All of them having their own pro/cons.

Get device location periodically, even if app is killed

I can't seem to find any supporting documentation in the Expo docs or React Native docs that say whether or not this is possible, so I figured I'd ask here.
I'm creating an app that needs to periodically fetch the device's location, whether the app is in the foreground, background, but most important even if it's killed. Even a few times an hour is fine.
Do both Android and iOS even support this behaviour? And if so, can someone point me in the right direction or provide the class/API that I would need to make use of in Expo/React Native (ideally in Expo) that would allow me to fetch the device's location periodically even if the app is killed?
Thank you!
Generally speaking, yes, it should be possible.
On Android, this is generally possible using a Broadcast Reciever (and see the information there regarding getting user's location up from API 28).
On iOS, this is specifically possible using the Standard Location Service (specifically refer to the section "Getting Location Events in the Background").
Focusing on React Native, then again - focusing on Expo, there is a recent post discussing just that:
The best way of tracking location in background using react-native + Expo in 2020. However, the comments there indicate that it doesn't work consistently.
Therefore, since I understand you don't specifically require using Expo (you just say "ideally in Expo" :), you can try following this React Native tutorial (June 2021): React Native background location (background & terminated app) (it uses react-native-location library).
It seems that this could be exactly what you're looking for:
React Native — Background Location Tracking without Timeout and with App killed
https://itnext.io/react-native-background-location-tracking-without-timeout-and-with-app-killed-3dbfbc80ad01

How to trigger an UI action when the app is closed in React Native?

Apologies if my question is already answered in any other ways. I am very new to react-native with no knowledge of android or java.
I am trying to make a video conferencing app with react native. I used Agora for video calling and linked it with socket.io and react-native-callkeep for real time experience.
Now i am stuck in a situation where i have to make the app functional when someone is calling and the app is ""Closed"". Something like Whatsapp. I thought of implementing Firebase Cloud Messaging for push notification. And though it will open the application in someway. But the application opens when user opens the notification.
Can anyone please help me with any of the following or better ideas:
1. Keep the socket io open even when app is closed
Or 2. Open my application with incoming push notification (Without Opening It)
Please avoid abstruct answers as i am very new in this sector. I really appreciate the help. Thank you.
I think the second method is the way to go you can also look at this library called react-native-callkeep I think it fits your use-case as well.

Is there any way of knowing (via code) if a user is in the app and using it right now?

I'm trying to incorporate a feature into one of my apps that allows you to message users that are, at that moment, in and using the app. I've searched for a while now, but with no luck finding any article, API, npm package, etc, that supports this concept - if it even is possible.
I'd rather use an API than see when the user was last on the app via a timestamp and then "guess" if the user is still using the app.
I'm using React Native.
Check that AppState equals to 'active'.
https://facebook.github.io/react-native/docs/appstate

How can I watch for API data updates in react native such as new message received in a messaging app?

I am trying to build a messaging app with react native and I don't want to use pre-built messaging components such as gifted-chat because what I want is to learn how to code such mechanisms.
Posting data is simple. I can just call my RESTful API whenever the "Send" button is pressed.
But then I would like messages sent by the other person to appear at the bottom of the conversation so that it looks like real time messaging. But how can I listen for new messages sent by the other person? Asking the API every 'n' seconds doesn't seem like a good idea.
As Dan suggested use sockets, there are plenty of tutorials that can show you how to implement real-time messaging in node.js with socketio. Here is my favorite! A quick google search returns plenty more of varying degrees of simplicity.
If you don't want to build your own backend then you can try Firebase. You will find some tutorials on google about how to implement a chat app.