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
If you see that error, make sure the pod command from CocoaPods is available in your system's PATH environment variable.
After you fix your CocoaPods installation, run pod install in the ios folder to fix your project.
CocoaPods unable to find a specification for AppCenterReactNativeShared during react-native link
If you see the following CocoaPods error message during react-native link, chances are your local clone (~/.cocoapods/repos on your machine) of the CocoaPods spec repo isn't up to date.
Analyzing dependencies [!] Unable to find a specification for AppCenterReactNativeShared (~> {version})
Run pod repo update to update the spec repo, and try react-native link again. For more information of CocoaPods commands, see CocoaPods command line reference.
How to upgrade app using App Center SDK from React Native 0.59 to 0.60
For upgrading React Native to the version 0.60.0, use the following command:
react-native upgrade 0.60.0
If during an upgrade you get this error Command failed: git status -s fatal: not a git repository (or any of the parent directories): .git, perform the next steps:
git init
git add .
git commit -m "Upgrade react-native"
After you finish upgrading you may remove the .git directory.
Update React Native iOS
Open Podfile and replace App Center dependencies on the following line:
use_native_modules!
Run the following command:
pod repo update
How to update React Native SDK to the latest version
If you've already integrated our SDK into your application and want to upgrade to a newer version of the SDK, follow the following steps to upgrade:
npm uninstall --save appcenter appcenter-analytics appcenter-crashes to uninstall old App Center packages.
npm install --save-exact appcenter appcenter-analytics appcenter-crashes to install latest App Center packages.
pod repo update to make sure your CocoaPods spec repo is up to date.
react-native link.
If you see error message similar to the following CocoaPods error message during react-native link, delete the auto-generated Podfile.lock in your ios folder and run react-native link again.
[!] 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)`
Migration from jCenter to Maven Central
Due to termination of jCenter support all our assemblies were moved to the Maven Central repository.
To use App Center, you need to add mavenCentral() to the repository in your Gradle file like below:
repositories {
google()
mavenCentral()
Protect the App Center secret value
The app_secret is an identifier of your app, it's required to know which app the traffic applies to and it can not be used to retrieve or edit existing data. If your app_secret is exposed, the biggest risk is sending bad data to your app, but it won't have an effect on the security of the data.
To retrieve any sensitive data, you'd need to provide an app/user token, which is generated on the client’s side. There's no way to make data on the client's side completely secure.
You can improve your app's security by using an environment variable to inject the app secret into your code. That way, the secret isn't visible in your code.