I just finished writing a small app that browses movie titles from Open Movie Database (omdbapi.com). Before I make it publicly available on the Google Play store, I’m looking for a few people willing to test the app. I’d be happy to reciprocate.
Awesome. Congrats on finishing your app! Do you have it publicly listed? If so, it might be best to just share the link to the app in your Expo profile.
It’s publicly listed at https://expo.io/@lsiden/omdb-film-browser, but I want to beta-test it through the Google Play store.
Ah, I see. I loaded it up in the Expo Client. One quick thought: Have you considered using RN’s
FlatList to allow for an infinite scrolling experience rather than going with the current paginated format? Also I presume this is expected behavior, but there are no query results displayed until two characters are entered into the input.
Thanks for the feedback.
I’m not aware of a two-character threshold for searches, but I do have a 300 ms delay.
Continuous scroll sounds interesting. I used a paginator because the OMDB API (omdbapi.com) limits you to 10 results at a time and I wanted to keep it simple while I’m learning. But I agree that continuous scroll would make for a better user-experience.
Reading the docs for FlatList (https://facebook.github.io/react-native/docs/flatlist.html) and VirtualizedList, it appears that you can fetch ahead a bit as the user scrolls forward by leveraging onEndReachedThreshhold(), but there is no symmetric callback when scrolling backward, so you have to cache everything that’s fetched.
A search for the title “Love” (a popular word in many movie titles) yields 13895 results. If a determined user were to scroll through all of them, and each entry averages about 200 bytes with the title and poster URL, it would have to hold roughly 2.8 Mbyte until he modifies the search. For comparison, Chrome on my phone is using just under 70 MB of data. So I guess that 2.8 MB is small change compared to that.
Okay, you’ve just given me something to do.
I finally got FlatList scrolling implemented. It was much more difficult than it should have been, because the list items become unresponsive to touch while new data is being loaded. You have to take care to optimize how the list renders items.
Anyway, thanks for your suggestion. I also replaced my custom redux-based navigation with react-navigation which made that much simpler. Overall, I’m pretty pleased with the result, but I would still like to find a few testers.
Adam, I now have a link on the Google Play Store for beta-testers. I would be delighted if you would take a look again and leave some comments.
This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.