Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это важно
Центр приложений Visual Studio был прекращен 31 марта 2025 г., за исключением функций аналитики и диагностики, которые будут поддерживаться до 30 июня 2026 г. Подробнее.
Файл React/RCTDefines.h не найден
Эта ошибка возникает, когда основные библиотеки React Native не указаны правильно, что может быть вызвано различными видами проблем интеграции или связывания. Это часто происходит, если у вас зависимости подключены с использованием относительного пути в Podfile, а не статически в проекте.
Наш скрипт связывания поддерживает только стандартный способ связывания модулей, поэтому для устранения проблемы:
Замените зависимости в вашем
Podfileна относительные пути привязки.До:
pod 'AppCenter/Analytics', '~> 1.14.0' pod 'AppCenter/Crashes', '~> 1.14.0' pod 'AppCenterReactNativeShared', '~> 1.13.0'После:
pod 'appcenter', path: '../node_modules/appcenter/ios' pod 'appcenter-analytics', path: '../node_modules/appcenter-analytics/ios' pod 'appcenter-crashes', path: '../node_modules/appcenter-crashes/ios'Запустите
pod installизiOSпапки.В AppDelegate.m замените импорт:
До:
#import <AppCenterReactNative/AppCenterReactNative.h> #import <AppCenterReactNativeAnalytics/AppCenterReactNativeAnalytics.h> #import <AppCenterReactNativeCrashes/AppCenterReactNativeCrashes.h>После:
#import "AppCenterReactNative.h" #import "AppCenterReactNativeAnalytics.h" #import "AppCenterReactNativeCrashes.h"Удалите зависимости AppCenter из проекта (щелкните правой кнопкой мыши зависимость > "Удалить зависимость").
- Выберите <YOUR_APP> ->Библиотеки и удалите следующие файлы:
AppCenterReactNative.xcodeprojAppCenterReactNativeAnalytics.xcodeprojAppCenterReactNativeCrashes.xcodeproj
- Откройте параметры проекта и на вкладке "Общие " в разделе "Связанные платформы и библиотеки " удалите новые элементы, ссылающиеся на целевые библиотеки, удаленные на предыдущем шаге:
libAppCenterReactNative.alibAppCenterReactNativeAnalytics.alibAppCenterReactNativeCrashes.a
- Измените пути поиска хедеров, чтобы удалить хедеры из проектов плагинов AppCenter React Native. Откройте параметры проекта и на вкладке "Параметры сборки " в разделе "Пути поиска заголовков " удалите следующие расположения для файлов заголовков:
$(SRCROOT)/../node_modules/appcenter/ios/AppCenterReactNative$(SRCROOT)/../node_modules/appcenter-analytics/ios/AppCenterReactNativeAnalytics$(SRCROOT)/../node_modules/appcenter-crashes/ios/AppCenterReactNativeCrashes
- Выберите <YOUR_APP> ->Библиотеки и удалите следующие файлы:
Команда React Native link не распознана
Если у вас установлено yarn на компьютере, то react-native init {myapp} инициализирует приложение и установит зависимости, используя yarn вместо npm. Если при запуске react-native link отображается следующее сообщение об ошибке, скорее всего, зависимости App Center устанавливаются из npm install {package} вместо yarn add {package}, из-за чего npm и yarn перемешиваются во время установки.
Command `link` unrecognized. Make sure that you have run `npm install` and that you are inside a react-native project.
В этом случае запустите npm install и повторите попытку react-native link .
Ошибка сборки: файл 'AppCenterCrashes/MSACErrorReport.h' не найден
React-Native 0.60 и выше
Вероятно, это конфликт между основными версиями пакетов из-за критического изменения в нашем пакете SDK Для Apple.
Убедитесь, что все
appcenterпакеты используют одну и ту же основную версию. Обновите их с помощьюnpm installилиyarnпри необходимости.Перейдите в папку ios проекта и удалите podfile.lock и папку Pods .
Запустите
pod install --repo-updateв папке ios .Убедитесь, что Podfile.lock содержит
appcenterзависимости одной основной версии.
React Native ниже 0,60
Одна из возможных причин заключается в выполнении react-native link без установки CocoaPods .
Чтобы подтвердить причину, выполните react-native linkи в журналах, проверьте следующую строку:
Could not configure AppCenter for iOS. Error Reason - spawn pod ENOENT
Эта строка находится в следующем разделе журналов:
Added code to initialize iOS AppCenter SDK in ios/TestApp/AppDelegate.m
Installing Cocoapods dependencies...
Could not configure AppCenter for iOS. Error Reason - spawn pod ENOENT
rnpm-install info Platform 'ios' module appcenter-analytics is already linked
rnpm-install info Platform 'android' module appcenter-analytics is already linked
Если вы видите эту ошибку, убедитесь, что pod команда из CocoaPods доступна в переменной среды PATH системы.
После исправления установки CocoaPods выполните pod install в папке iOS, чтобы исправить проект.
CocoaPods не удалось найти спецификацию для AppCenterReactNativeShared при выполнении команды react-native link.
Если вы видите следующее сообщение об ошибке CocoaPods во время react-native link, вероятность того, что ваш локальный клон (~/.cocoapods/repos на вашем компьютере) репозитория спецификации CocoaPods не обновлен.
Analyzing dependencies [!] Unable to find a specification for AppCenterReactNativeShared (~> {version})
Запустите pod repo update , чтобы обновить репозиторий спецификаций и повторите попытку react-native link . Дополнительные сведения о командах CocoaPods см. в справочнике по командной строке CocoaPods.
Обновление приложения с помощью пакета SDK Центра приложений с React Native 0.59 до версии 0.60
Чтобы обновить React Native до версии 0.60.0, используйте следующую команду:
react-native upgrade 0.60.0
Замечание
Если во время обновления вы получите эту ошибку Command failed: git status -s fatal: not a git repository (or any of the parent directories): .git, выполните следующие действия:
git init
git add .
git commit -m "Upgrade react-native"
После завершения обновления вы можете удалить .git каталог.
Обновление React Native iOS
Откройте Podfile и замените зависимости Центра приложений на следующей строке:
use_native_modules!Выполните следующую команду:
pod repo update
Обновление пакета SDK React Native до последней версии
Если вы уже интегрировали наш пакет SDK в приложение и хотите обновить до более новой версии пакета SDK, выполните следующие действия, чтобы обновить:
npm uninstall --save appcenter appcenter-analytics appcenter-crashesдля удаления старых пакетов Центра приложений.npm install --save-exact appcenter appcenter-analytics appcenter-crashesдля установки последних пакетов Центра приложений.pod repo updateчтобы убедиться, что ваш репозиторий спецификации CocoaPods обновлен.react-native link.
Подсказка
Если вы видите сообщение об ошибке, аналогичное следующему сообщению об ошибке CocoaPods во время react-native link, удалите автоматически созданный podfile.lock в папке ios и снова запустите его react-native link .
[!] Unable to satisfy the following requirements: - `AppCenter/Core (= 1.0.0)` required by `Podfile.lock` - `AppCenter/Core (= 1.0.0)` required by `AppCenter/Crashes (1.0.0)` - `AppCenter/Core (= 1.0.0)` required by `AppCenter/Analytics (1.0.0)` - `AppCenter/Core (= 1.0.1)` required by `AppCenterReactNativeShared (1.0.1)`
Миграция из jCenter в Maven Central
Из-за прекращения поддержки jCenter все сборки были перенесены в репозиторий Maven Central.
Чтобы использовать Центр приложений, необходимо добавить mavenCentral() в репозиторий в файле Gradle, как показано ниже:
repositories {
google()
mavenCentral()
}
Защита секретного значения Центра приложений
Это app_secret идентификатор вашего приложения, необходимо знать, к какому приложению применяется трафик, и его нельзя использовать для извлечения или изменения существующих данных. Если ваш app_secret становится доступным, наибольшая опасность заключается в отправке недостоверных данных в приложение; однако это не повлияет на безопасность данных.
Чтобы получить конфиденциальные данные, необходимо предоставить маркер приложения или пользователя, который создается на стороне клиента. Нет способа сделать данные на стороне клиента полностью безопасными.
Вы можете улучшить безопасность приложения с помощью переменной среды для внедрения секрета приложения в код. Таким образом, секрет не отображается в коде.