Missing NSLocationAlwaysUsageDescription in Info.plist without any GeoLocation Usage in 0.61.5 (ITMS-90683)
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 127k
- Forks
- 25.3k
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 4
Description
Description:
I am getting E-Mail from Apple after submitting to App Store Connect regarding ITMS-90683. It basically says that I have to include NSLocationAlwaysUsageDescription and NSLocationWhenInUseUsageDescription in my Info.plist because they say that my
app's code references one or more APIs that access sensitive user data.
Now, I do not use any of react natives geolocation functions. I have scanned my whole repo for anything regarding these APIs, and the only thing which came up was RCTConvert+CoreLocation.h (https://github.com/facebook/react-native/blob/master/React/Views/RCTConvert%2BCoreLocation.h) and it's ".m" file. These do import "CoreLocation", which could be enough to trigger this E-Mail, as suggested here.
See this issue for explaining the whole background: https://github.com/facebook/react-native/issues/20879.
React Native version:
System:
OS: macOS Mojave 10.14.6
CPU: (8) x64 Intel(R) Core(TM) i7-4980HQ CPU @ 2.80GHz
Memory: 22.33 MB / 16.00 GB
Shell: 5.3 - /bin/zsh
Binaries:
Node: 12.12.0 - /usr/local/bin/node
npm: 6.13.6 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: iOS 13.2, DriverKit 19.0, macOS 10.15, tvOS 13.2, watchOS 6.1
Android SDK:
API Levels: 28, 29
Build Tools: 28.0.3, 29.0.2
System Images: android-28 | Intel x86 Atom_64, android-29 | Google APIs Intel x86 Atom
IDEs:
Android Studio: 3.5 AI-191.8026.42.35.5977832
Xcode: 11.3.1/11C504 - /usr/bin/xcodebuild
npmPackages:
react: 16.9.0 => 16.9.0
react-native: 0.61.5 => 0.61.5
npmGlobalPackages:
react-native-eject: 0.1.2
Steps To Reproduce
- Bootstrap a clean react native app.
- Submit it to App Store connect.
Expected Results
As Geolocation was supposed to be extracted from the core, I wonder why I still get this warning. I do not consider adding the mentioned values in my plist, as I expect that it will most likely show on some user facing screen that the app is using location services when it is definitely not.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the warning with a clean React Native 0.61.5 app submitted to App Store Connect, then inspect React/Views/RCTConvert+CoreLocation.h and its .m file. Determine whether those CoreLocation references cause ITMS-90683 despite no geolocation usage; done means documenting the cause and verifying an appropriate resolution or confirmed limitation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- react-native
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100