Reputation: 213
I'm new to React Native but not React. I've been facing an issue when uploading my app-bundle (.aab) file to the android play store. I don't know how to remove/upgrade from 4.3.0. The specific error is:
SDK Segment Analytics Android (com.segment.analytics.android:analytics), 4.3.0 collects personal or sensitive data that includes but may not be limited to Advertising ID, Android ID identifiers. Persistent device identifiers may not be linked to other personal and sensitive user data or resettable device identifiers as described in the User Data policy.
You can't publish this release due to this policy issue. To be allowed to publish, you may consider moving to another SDK; removing this SDK; or if available from your SDK provider, upgrading to a policy-compliant version of this SDK that does not include the violating code.
According to the information provided by your SDK provider, you may consider upgrading to 4.10.1. Please consult the SDK provider for further information.
ACTION REQUIRED: Upload a new compliant version AND deactivate the noncompliant version.
Read through the User Data policy for more details, and how to submit an updated app for review here.
I've found other stack overflow articles and tried multiple different solutions to no avail.
Here is my top level build.gradle file
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext {
buildToolsVersion = "31.0.0"
minSdkVersion = 31
implementationSdkVersion = 32
compileSdkVersion = 32
targetSdkVersion = 32
}
repositories {
google()
mavenCentral()
jcenter()
}
dependencies {
classpath("com.android.tools.build:gradle:4.1.0")
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
mavenLocal()
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url(new File(["node", "--print", "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim(), "../android"))
}
maven {
// Android JSC is installed from npm
url(new File(["node", "--print", "require.resolve('jsc-android/package.json')"].execute(null, rootDir).text.trim(), "../dist"))
}
google()
mavenCentral()
jcenter()
maven { url 'https://www.jitpack.io' }
}
}
Here is my distribution URL in gradle.properties
distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.1-all.zip
Dependencies from package.json
"dependencies": {
"expo": "^45.0.0",
"expo-analytics-segment": "^11.2.1",
"expo-cli": "^5.2.0",
"expo-dev-client": "~1.2.1",
"expo-font": "~10.2.0",
"expo-splash-screen": "~0.16.1",
"expo-status-bar": "~1.4.0",
"expo-updates": "~0.14.4",
"react": "18.0.0",
"react-dom": "18.0.0",
"react-native": "0.69.4",
"react-native-gesture-handler": "~2.5.0",
"react-native-reanimated": "~2.9.1",
"react-native-safe-area-context": "4.3.1",
"react-native-screens": "~3.15.0",
"react-native-web": "~0.18.7"
},
Here is the eas cli I'm using from eas.json
"cli": {
"version": ">= 0.55.1"
},
I've been at this for days and trying multiple things, I'm really hoping someone can help me :)
Thanks
Upvotes: 1
Views: 499
Reputation: 2638
Expo 45 has a segment version of 4.3.0 which is deprecated. As per the document and it is removed in expo 46. So you need to update the expo version to remove the segment.
Please read the following document for more information.
https://github.com/expo/expo/commit/8b3ca763a7c946fc1a737280cc5c7f34df438e2b
https://docs.expo.dev/versions/v45.0.0/sdk/segment/
https://blog.expo.dev/expo-sdk-46-c2a1655f63f7
Upvotes: 0