Tags: fleetbase/storefront-app
Tags
This release brings critical Android compatibility updates and signif… …icant improvements to screen layout management. The storefront app now supports Android's new 16KB page size requirement for Google Play compliance and introduces a centralized screen wrapper component for consistent UI behavior across platforms. - **Upgraded React Native to 0.81.5** - Latest stable version with Android 16KB page size support - **Updated Android Gradle Plugin to 8.6.0** - Required for 16KB page size compatibility - **Upgraded Gradle to 8.13** - Ensures compatibility with AGP 8.6.0 - **Updated build tools and dependencies** - All Android build components now support 16KB pages - **Google Play compliance achieved** - App can now be published to Google Play without warnings - **Centralized screen spacing and safe area management** - No more scattered Platform checks - **Auto-detection of modal presentation** - Automatically adjusts spacing for modals vs regular screens - **Platform-specific spacing logic** - Handles Android/iOS differences automatically - **Support for scrollable content** - Works with both scrollable and non-scrollable screens - **20+ configurable props** - Highly customizable with TypeScript support - **Comprehensive documentation** - Full JSDoc comments and usage examples - **Fixed vehicle markers not rendering on first load** - Markers now appear immediately on Android - **Fixed SVG marker support** - Remote SVG vehicle avatars now render correctly on Android - **Fixed marker rotation** - Smooth heading rotation now works on both platforms - **Fixed marker children rendering** - Labels below markers now display correctly on Android - **Resolved bitmap conversion issues** - Proper handling of Android's marker-to-bitmap conversion - **Fixed ProductScreen close button** - No longer overlaps with Android status bar - **Fixed bottom button positioning** - Add to Cart and quantity buttons now properly positioned on Android - **Fixed modal spacing** - Consistent spacing across all modal screens - **Fixed safe area handling** - Proper insets on both Android and iOS - **Fixed placeholder text color** - More visible placeholder text on Android - **Fixed LocationPicker dropdown** - Dropdown no longer overlaps trigger button on Android - **Fixed cart quantity indicator** - Badge now fully visible on Android (overflow issue resolved) - **Fixed AddNewLocationScreen input** - Input focus now works correctly on Android - React Native: `0.76.5` → `0.81.5` - Android Gradle Plugin: `8.3.0` → `8.6.0` - Gradle: `8.8` → `8.13` - Kotlin: `1.9.22` → `1.9.25` - @stripe/stripe-react-native: Updated for RN 0.81 compatibility - react-native-gesture-handler: `2.20.2` → `2.29.1` - Various other dependencies updated for compatibility - Switched from Yarn patches to patch-package for better Yarn 1.x compatibility - Added proper patches for react-native-notifications and react-native-i18n - Fixed Gradle compatibility issues across all native modules - Added JitPack repository for BlurView dependency - Cleaned up outdated pod configurations - Removed scattered Platform checks and manual inset calculations - Simplified component code significantly (13 screens migrated to ScreenWrapper) - Added TypeScript types throughout - Improved code maintainability and readability The following screens now use the centralized ScreenWrapper component: 1. AccountScreen 2. BootScreen 3. CartItemScreen 4. CartScreen 5. CatalogScreen 6. CreateAccountScreen 7. DeleteAccountVerifyScreen 8. EditAccountPropertyScreen 9. EditLocationCoordScreen 10. LoginScreen 11. PhoneLoginScreen 12. PhoneLoginVerifyScreen 13. ProductScreen - **Reduced re-renders** - Better `tracksViewChanges` management for map markers - **Optimized marker rendering** - Faster initial render on Android - **Improved animation performance** - Smooth vehicle tracking on both platforms **None** - This release is fully backward compatible. All changes are internal improvements and bug fixes. For developers extending the app: - **New screens should use ScreenWrapper** - See implementation examples in migrated screens - **Avoid manual Platform checks for spacing** - Let ScreenWrapper handle it - **Use autoDetectModal prop** - No need to manually detect modal presentation - **For absolutely positioned buttons** - Still need manual bottom inset handling Special thanks to the React Native community for Android 16KB page size support and research on marker rendering issues with react-native-maps. - **59 commits** merged - **60 files** changed - **+6,111 / -4,852** lines changed - **13 screens** migrated to ScreenWrapper - **10+ Android-specific bugs** fixed --- **Full Changelog**: [feature/android-16kb-compliance](#45)
* Upgraded to React Native 0.76.1 * bump version and setup corepack in cicd * include yarn.lock * upgraded react-native-device-info * fixed app build for ios * complete refactor underway completing location management screens * still working progress and working on product/cart/checkout functionality, next cutomer login/auth * completed search screen, minus composability refactor wip * latest * location management completed * further progress * working through checkout flow * working version for store orders only * upgraded fleetbase and storefront sdk * upgraded fleetbase sdks * added assets and remove `storefront.config.js` as user should create * fix defaul socketcluster connection * fix for app icon and bootsplash * implemented account creation and improved checkout flow for delivery selection * fix bug in search screen * little cleanup for auth screens * all the UX kinks are out * few fixes on login and location picker component * patches for checkout flows and grid * few patches and ability to prioritize pickup * minor styling patch * when store location is not provided added handler * fixes fixes fixes * upgraded to react-native v0.77.0-rc.6 * implemented `<FastImage />` component as well as Youtube videos on product screen if applicable * improvements to the youtube videos * implemented oauth logins * implemented push notifications and handler for incoming order notifications * several improvemetns for styling * added ability for customers to complete pickup orders * few improvements to product screen * added new food truck based screen * fix use of default locale in language context, fix colors on food truck screen, fix cicd fo rios build * fix ios build cicd * run ios actions with 15 pro * fix boot sequence of ios cicd * fix simulator id * oops * fix simulator boot sequence in cicd * fix simulator boot for ios * fix running of the simulator * added step Debug iOS Build Output * more ios build debugging * debug ios build fail * more debuging for ios build step in cicd * use correct ios os * use correct ios os 18.2 * 🤖 successful android builds * improvements * android build runs on android devices and simulators * more android work * improved storeinfo when clicking location on map, added in reviews & rating, social info, and schedule * cleaned up fixes for screens and food truck functionality * fix `autoCapitalize` should be boolean * added ability to add notes to orders and few button color fixes * added global colors thrue tamagui to prevent breakage * safer phone login screen * fix styling of add to cart button * added more design customizations via env * fix search screen bugs and rendering, use flatgrid for product renderings * fix padding for absolute tab bar and fix edit account property update handler * performance improvements and food truck screen will update zone based on user location * slight opacity adjustment * improved performance and route preview updated * fix toast styling and fix route previews when using food trucks * cleaned up for android release * critical fixes for android build/release, and improvements to current location hook * added ability to open terms of service and privacy policy * ignore android release builds * ignore keystore files * ignore releases * set the app name using env variable for android * fix android blank screen reansition rendering issue * few fixes on android * fix gradle app build * fix minor bugs and location permission screen * fix location permission prompt screen to follow apple guidelines * fixed padding when modal/android etc, added customer account deletion flow * completed english translation file * completed full internationalization/localization implementation for translation files * implemented available locales config * few spacing tweaks * fully translated * fixed mongolian translations * web build is working * rendering web build, just few things to fix for full web compatability * working web build with css, and new config to skip geocoding screen, and a bug fix on current marker select * fully implemented profile photo upload change and remove * custom colors to overwrite default if provided * fixes specific for android builds * fix broken auth verifyCode function * added fixed workflows, improved app ux and patched few minor issues * patches for the android build * fix ios build in workflow * fix typo in app/build.gradle * hotfix android build issue * hotfix android app_name build issue
PreviousNext