react-native-bars icon indicating copy to clipboard operation
react-native-bars copied to clipboard

I have used this liabrary but warning not goes from play store console of related to edge to edge

Open getsettalk opened this issue 6 months ago • 20 comments

Before submitting a new issue

  • [x] I tested using the latest version of the library, as the bug might be already fixed.
  • [x] I tested using a supported version of react native.
  • [x] I checked for possible duplicate issues, with possible answers.

Bug summary

I have used this library into our react native app, to fix edge to edge error at showing play store console for related android 15, so i have used this package to fix that issue and installed the latest version and updated to play store , but that error warning not gone.

what i do.

Library version

1.6.1

Environment info

System:
  OS: macOS 15.3.1
  CPU: (8) x64 Intel(R) Core(TM) i5-1038NG7 CPU @ 2.00GHz
  Memory: 517.16 MB / 16.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 20.10.0
    path: /usr/local/bin/node
  Yarn:
    version: 1.22.22
    path: /usr/local/bin/yarn
  npm:
    version: 9.9.4
    path: /usr/local/bin/npm
  Watchman:
    version: 2024.12.02.00
    path: /usr/local/bin/watchman
Managers:
  CocoaPods:
    version: 1.16.2
    path: /Users/rajeshkumar/.rbenv/shims/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 24.4
      - iOS 18.4
      - macOS 15.4
      - tvOS 18.4
      - visionOS 2.4
      - watchOS 11.4
  Android SDK:
    API Levels:
      - "28"
      - "30"
      - "31"
      - "32"
      - "33"
      - "34"
      - "35"
    Build Tools:
      - 30.0.2
      - 30.0.3
      - 31.0.0
      - 33.0.0
      - 33.0.1
      - 34.0.0
      - 35.0.0
    System Images:
      - android-30 | Google Play Intel x86 Atom
      - android-33 | Google APIs Intel x86_64 Atom
      - android-34 | Google APIs ARM 64 v8a
      - android-34 | Google APIs Intel x86_64 Atom
      - android-35 | Google Play Intel x86_64 Atom
      - android-36 | Google Play Intel x86_64 Atom
    Android NDK: Not Found
IDEs:
  Android Studio: 2024.3 AI-243.26053.27.2432.13536105
  Xcode:
    version: 16.3/16E140
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 17.0.12
    path: /usr/bin/javac
  Ruby:
    version: 3.1.2
    path: /Users/rajeshkumar/.rbenv/shims/ruby
npmPackages:
  "@react-native-community/cli":
    installed: 15.1.3
    wanted: 15.1.3
  react:
    installed: 19.0.0
    wanted: 19.0.0
  react-native:
    installed: 0.78.0
    wanted: 0.78.0
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: true
iOS:
  hermesEnabled: Not found
  newArchEnabled: false

info React Native v0.79.3 is now available (your project is running on v0.78.0).
info Changelog: https://github.com/facebook/react-native/releases/tag/v0.79.3
info Diff: https://react-native-community.github.io/upgrade-helper/?from=0.78.0&to=0.79.3
info For more info, check out "https://reactnative.dev/docs/upgrading?os=macos".

Steps to reproduce

install this library and setup with your project and use this Theme.EdgeToEdge.Light in style.xml

Reproducible sample code

N/A

getsettalk avatar Jun 10 '25 05:06 getsettalk

Same here

expo: 53.0.9 react-native-edge-to-edge: 1.6.0

farynaio avatar Jun 15 '25 16:06 farynaio

Similar to react-native-bootsplash that implement SplashScreen API despite the warning (only for some apps?), Google Play console checks are not known. Maybe they analyze the bundle and check for code that could disable edge-to-edge? (there's some in react-native, but it's unused)

zoontek avatar Jun 17 '25 09:06 zoontek

Similar to react-native-bootsplash that implement SplashScreen API despite the warning (only for some apps?), Google Play console checks are not known. Maybe they analyze the bundle and check for code that could disable edge-to-edge? (there's some in react-native, but it's unused)

but i think this will not cause any issues as the older deprecated api also work nicely in android 16 ?

foya562 avatar Jul 02 '25 08:07 foya562

but i think this will not cause any issues as the older deprecated api also work nicely in android 16 ?

No, it's wrapped with versions checks and deprecation annotations.

zoontek avatar Jul 02 '25 08:07 zoontek

So i am safe for now 😂

foya562 avatar Jul 02 '25 08:07 foya562

hey anyone has got any best solution to remove that warning from play console

getsettalk avatar Jul 08 '25 05:07 getsettalk

I think the issue is not in this library. The issue lies in these library, due of which we are getting google play warning. React native itself React native expo splash screen React native safe area context library

foya562 avatar Jul 17 '25 07:07 foya562

How we can migrate away from those api which has deprecated.

On Tue, 12 Aug 2025, 4:46 am Optimistix Lab, @.***> wrote:

optimistixlab left a comment (zoontek/react-native-edge-to-edge#83) https://github.com/zoontek/react-native-edge-to-edge/issues/83#issuecomment-3177161470

Checking the details i got this , so it's react native itself (0.77) and react native screens (4.9.1) issue not this library:

Your app uses deprecated APIs or parameters for edge-to-edge One or more of the APIs you use or parameters that you set for edge-to-edge and window display have been deprecated in Android 15. Your app uses the following deprecated APIs or parameters:

android.view.Window.getStatusBarColor android.view.Window.setStatusBarColor android.view.Window.setNavigationBarColor android.view.Window.getNavigationBarColor These start in the following places:

com.facebook.react.modules.statusbar.StatusBarModule$b.runGuarded

com.facebook.react.modules.statusbar.StatusBarModule.getTypedExportedConstants com.facebook.react.views.view.p.e com.google.android.material.internal.c.a com.swmansion.rnscreens.d0.m com.swmansion.rnscreens.d0.q r3.f.g To fix this, migrate away from these APIs or parameters.

— Reply to this email directly, view it on GitHub https://github.com/zoontek/react-native-edge-to-edge/issues/83#issuecomment-3177161470, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALY3KNGEL637OZRKQXJRFF33NEP4LAVCNFSM6AAAAAB66TSBOSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTCNZXGE3DCNBXGA . You are receiving this because you authored the thread.Message ID: @.***>

getsettalk avatar Aug 12 '25 01:08 getsettalk

How we can migrate away from those api which has deprecated. …

On Tue, 12 Aug 2025, 4:46 am Optimistix Lab, @.***> wrote: optimistixlab left a comment (zoontek/react-native-edge-to-edge#83) <#83 (comment)>

Checking the details i got this , so it's react native itself (0.77) and react native screens (4.9.1) issue not this library:

Your app uses deprecated APIs or parameters for edge-to-edge One or more of the APIs you use or parameters that you set for edge-to-edge and window display have been deprecated in Android 15. Your app uses the following deprecated APIs or parameters:

android.view.Window.getStatusBarColor android.view.Window.setStatusBarColor android.view.Window.setNavigationBarColor android.view.Window.getNavigationBarColor These start in the following places:

com.facebook.react.modules.statusbar.StatusBarModule$b.runGuarded

com.facebook.react.modules.statusbar.StatusBarModule.getTypedExportedConstants com.facebook.react.views.view.p.e com.google.android.material.internal.c.a com.swmansion.rnscreens.d0.m com.swmansion.rnscreens.d0.q r3.f.g To fix this, migrate away from these APIs or parameters.

— Reply to this email directly, view it on GitHub <#83 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALY3KNGEL637OZRKQXJRFF33NEP4LAVCNFSM6AAAAAB66TSBOSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTCNZXGE3DCNBXGA . You are receiving this because you authored the thread.Message ID: @.***>

You don't have to if your app is working fine on various android versions. Also expo and react native will fix these issues in their upcoming updates.

foya562 avatar Aug 12 '25 06:08 foya562

Same here, two warnings using:

expo: 53.0.20
react-native: 0.79.6
react-native-edge-to-edge: 1.6.2

Warning 1:

Edge-to-edge may not display for all users

From Android 15, apps targeting SDK 35 will display edge-to-edge by default. Apps targeting SDK 35 should handle insets to make sure that their app displays correctly on Android 15 and later. Investigate this issue and allow time to test edge-to-edge and make the required updates. Alternatively, call enableEdgeToEdge() for Kotlin or EdgeToEdge.enable() for Java for backward compatibility.


Warning 2:

Your app uses deprecated APIs or parameters for edge-to-edge

One or more of the APIs you use or parameters that you set for edge-to-edge and window display have been deprecated in Android 15. Your app uses the following deprecated APIs or parameters:

android.view.Window.setNavigationBarColor
android.view.Window.getNavigationBarColor
com.yalantis.ucrop.UCropActivity.setStatusBarColor
LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES
LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT

These start in the following places:

com.facebook.react.modules.statusbar.StatusBarModule$setColor$1.runGuarded
com.facebook.react.modules.statusbar.StatusBarModule.getTypedExportedConstants
com.facebook.react.views.view.WindowUtilKt.setSystemBarsTranslucency
com.google.android.material.bottomsheet.BottomSheetDialog.onCreate
com.google.android.material.internal.EdgeToEdgeUtils.applyEdgeToEdge
com.google.android.material.sidesheet.SheetDialog.onCreate
com.swmansion.rnscreens.ScreenWindowTraits.setColor$react_native_screens_release
com.swmansion.rnscreens.ScreenWindowTraits.setNavigationBarColor$react_native_screens_release
com.yalantis.ucrop.UCropActivity.setStatusBarColor
com.yalantis.ucrop.UCropActivity.setupAppBar
com.zoontek.rnedgetoedge.EdgeToEdgeModuleImpl.applyEdgeToEdge$lambda$3
androidx.activity.EdgeToEdgeApi28.adjustLayoutInDisplayCutoutMode
com.facebook.react.views.view.WindowUtilKt.statusBarHide
com.facebook.react.views.view.WindowUtilKt.statusBarShow

To fix this, migrate away from these APIs or parameters.

F170x avatar Aug 18 '25 18:08 F170x

Having same issue

farazreact avatar Aug 30 '25 23:08 farazreact

what is the cure to this ??

farazreact avatar Aug 31 '25 01:08 farazreact

Same here. I assume this is something that will be resolved in future Expo/RN updates

stvb95 avatar Sep 03 '25 14:09 stvb95

Issue still there, any solution ??

farazahmed12 avatar Sep 07 '25 19:09 farazahmed12

Okay, so right now, I am using expo 53 and react native 0.79, and i still get this warning. But this is not an issue right now, as these warnings are not problematic. And upcoming react native version and expo version will try to solve it.

To be 100% sure, test you app thoroughly on all android versions that your app support. (For simplicity, you can use Firebase Test Lab (Free tier) which gives 5 tests on physical devices in their cloud).

foya562 avatar Sep 08 '25 04:09 foya562

More than a month later, with new expo 54, it's still an issue.

@zoontek , this is serious, don't ignore it.

From Android vitals overview:

Android vitals data helps you to understand and improve your app's technical quality. Fixing issues can lead to a better user experience and higher ratings. Core vitals metrics affect the discoverability of your app on Google Play. If your app exceeds bad behavior thresholds, it is likely to be less discoverable, and a warning may be shown on your store listing.

farynaio avatar Oct 21 '25 06:10 farynaio

@farynaio First, Expo 54 isn't using react-native-edge-to-edge anymore, but the RN edgeToEdgeEnabled gradle flag.

Second: Google is ghosting me, did you tried to contact them and explain that your app is edge-to-edge and that their automatic detection (I guess, code analysis) is broken?

zoontek avatar Oct 21 '25 07:10 zoontek

@farynaio First, Expo 54 isn't using react-native-edge-to-edge anymore, but the RN edgeToEdgeEnabled gradle flag.

Second: Google is ghosting me, did you tried to contact them and explain that your app is edge-to-edge and that their automatic detection (I guess, code analysis) is broken?

@zoontek thanks for prompt reply, sorry didn't know any of that. Tried to get some information from Expo team for long time, but crickets.

About Google, it's worth a try, their teams used to be responsive, and Vitals are quite important.

So, for now, in Expo projects, react-native-edge-to-edge shouldn't be included, or it can be used as an alternative to that gradle solution? We still have react-native-edge-to-edge in dependencies.

farynaio avatar Oct 22 '25 16:10 farynaio

@farynaio You don't need react-native-edge-to-edge with Expo 54 / RN 0.81, indeed.

zoontek avatar Oct 22 '25 17:10 zoontek

You don't need react-native-edge-to-edge with Expo 54 / RN 0.81, indeed.

Excuse the slightly tangential question @zoontek - we've not got to 0.81+ yet, but have been using react-native-edge-to-edge. Does 0.81+'s own edge-to-edge flag cover all the functionality here or are there cases where someone might still want to use this project instead of RN's own edge-to-edge support? I'm guessing the two wouldn't play nicely together in a project?

Edit: I just saw the tip in the readme and may have answered my own question... 😊

liamjones avatar Oct 23 '25 07:10 liamjones