Магазин приложений iOS NSBluetoothAlwaysUsageDescription - отклонение - PullRequest
2 голосов
/ 19 сентября 2019

Я пытаюсь разместить мое приложение Cordova в магазине приложений для iOS.Я использую cordova cli 8. Он продолжает отклоняться и сообщает об ошибке:

App Store Connect Уважаемый разработчик,

Мы обнаружили одну или несколько проблем с недавней доставкой для вашего приложения, «MyApp» 4.19.2 (4.19.2.4).Исправьте следующие проблемы, а затем снова загрузите.

ITMS-90683: отсутствует строка назначения в Info.plist - код вашего приложения ссылается на один или несколько API-интерфейсов, которые получают доступ к конфиденциальным данным пользователя.Файл Info.plist приложения должен содержать ключ NSBluetoothAlwaysUsageDescription с целевой строкой, ориентированной на пользователя, которая четко и полностью объясняет, почему вашему приложению нужны данные.Начиная с весны 2019 года, все приложения, представленные в App Store и имеющие доступ к пользовательским данным, должны содержать целевую строку.Если вы используете внешние библиотеки или SDK, они могут ссылаться на API, которые требуют строку назначения.Хотя ваше приложение может не использовать эти API, строка назначения по-прежнему требуется.Вы можете связаться с разработчиком библиотеки или SDK и попросить, чтобы они выпустили версию своего кода, которая не содержит API.Узнать больше (https://developer.apple.com/documentation/uikit/core_app/protecting_the_user_s_privacy).

С уважением,

Команда App Store

Это странно, потому что я вижу строку в моем файле Info.plist и вмой файл config.xml.

Я не знаю, почему он продолжает отклоняться. Мое приложение не использует Bluetooth само по себе, оно просто содержит некоторые плагины Cordova, которые включают его туда.

Info.plist

файл config.xml

Ответы [ 2 ]

0 голосов
/ 20 сентября 2019

Одна вещь, которая первоначально работала для меня, была установка значения подключаемого модуля диагностики в config.xml и обновление файла ios.json в папке platform / ios, чтобы удалить все ссылки на Bluetooth.Я также прочитал, что вам нужно обновить frameworks.json, но если я удалил это, сборка не удалась.Я подумал об изменении значения на 0, но когда я попробовал его с другими изменениями, оно какое-то время работало.

config.xml (за пределами узлов платформы):

<preference name="cordova.plugins.diagnostic.modules" value="LOCATION WIFI CAMERA NOTIFICATIONS MICROPHONE CONTACTS CALENDAR REMINDERS MOTION NFC EXTERNAL_STORAGE" />

Иудалить все ссылки на bluetooth в ios.json.

0 голосов
/ 19 сентября 2019

Вам необходимо указать в NSBluetoothAlwaysUsageDescription, почему и где вы используете Bluetooth и местоположение.Затем повторно отправьте, они примут это.

...