app version includes SDK com.segment.analytics.android:analytics, 4.8.2 or an SDK that one of your libraries depends on ...

Please provide the following:

  1. SDK Version: 44
  2. Platforms(Android/iOS/web/all): Android
  3. Add the appropriate “Tag” based on what Expo library you have a question on. Expo itself.
  4. Compilation method: EAS build

Hi, thank you all in advance for any help. First of all, yes, I know this topic might look as a duplicate for: app version includes SDK com.segment.analytics.android:analytics, 4.9.4 or an SDK that one of your libraries depends on, which collects personal or sensitive data that includes but may not be limited to Advertising ID, Android ID identifiers.

And yes, the problem is basically the same, however, the reported SDK version is slightly different (4.8.2 vs 4.9.4). None of which is acceptable by Google. As mentioned everywhere else where this issue is brought up, the solution is to upgrade the problematic SDK to v4.10.1 or greater. Now, the problem is, I don’t use this SDK directly anywhere in my app. Nor do I use related packages like expo-analytics-segment, expo-ads-admob, expo-firebase, etc. So how can I remove/upgrade the version of this SDK if I’m not even using it?

I also installed manually expo-analytics-segment which was reportedly causing the issue (even tho I don’t use it), browsed the source code for the module, and indeed uses com.segment.analytics.android v4.10.4 so apparently the issue is fixed, but for some reason Google still complains. I don’t know what else to do…

I’ve already tried:

  • Delete node_modules, re-install, up the app version, rebuild, upload. Before starting the rollout, Google shows me the same error.
  • Upgrade Expo SDK to v45 & up the app version, rebuild, upload. Still the same warning.
  • Install manually expo-analytics-segment (although I don’t use it), verify com.segment.analytics.android version is alright, up the app version, rebuild, upload. Same error.
  • I considered patching the problematic modules myself, but there’s no mention of com.segment.analytics.android anywhere in my node_modules so I can upgrade the version.

What else can I do??
Also, if any of you ran into the same issue, and managed to solve it, but your solution is listed above so is not working for my scenario, could you at least tell me what exactly did you do after building a compliant version?
Like, imagine I can somehow build a compliant version, I proceed to perform a release (internal testing preferably), during the review release step, I get the warning. If my build were alright, would I still get the same warning there? Perhaps I’m receiving the same warning time and time again because it won’t go until I submit my build for review (despite the automatic review-release step warning against)?

Or should the warning stop showing automatically after uploading a compliant version? (Which means there’s no need to send anything for review in order to make sure the issue has been solved)

I appreciate the information and advice you have shared

Hi @engineeringgg

Did you see Brent’s solution here?

If you use expo-analytics-segment in your app, please run expo install expo-analytics-segment to update it to the latest version that is compatible with Expo SDK 44.

If you do not use it, then just rebuild your app. Alternatively, you could switch to EAS Build which would result in your app not even including the Segment native code at all.

Also, if you have another Testing version of your app in Google Play Console you might need to update that too before Google stops complaining.

Thank you for your reply. Yes, I’ve already checked that thread and rebuilt the app several times. I don’t use expo-segment-analytics anywhere and even made sure is not present when running expo prebuild.

Re-built using EAS countless times to no avail. Not even a hello world app gets trough. At this point I think the Play Console might be bugged and appeal directly to Google.

Is there anyway I can prove to Google that com.segment.analytics.android is not present in my compiled binary? I need to make sure the code is clean before blaming others.

If I build an Expo SDK 45 app using expo build:android -t app-bundle and then unzip it, I get this:

% grep -a "com.segment.analytics.android.*analytics" ./BUNDLE-METADATA/com.android.tools.build.libraries/dependencies.pb
com.segment.analytics.android	analytics*4.10.4"

If I compile with EAS Build and try the same thing I get no output:

% grep -a "com.segment.analytics.android.*analytics" ./BUNDLE-METADATA/com.android.tools.build.libraries/dependencies.pb

Exactly. I even went as far as to decompile the *.aab with JADX and the resulting binary has no trace of com.segment.analytics.android.analytics

Thank you for the help, I will forward this issue to Google.

Just also make sure you don’t have an old version of the app available for internal testing or something like that.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.