← Files FirebaseARCHIVED FILE
skills/firebase-remote-config-basics/references/ios_setup.md
2.62 KB · Oct 5, 2026 · 18:17 UTC
# Firebase Remote Config iOS Setup Guide
Important references:
- Refer to the `firebase-basics` skills, particularly those for iOS setup,
before proceeding.
- Refer to the `xcode-project-setup` skills.
## Project and App Setup
Use the `firebase-tools` CLI to set up the project if necessary.
1. **Find Bundle ID:** Read the Xcode project to find the iOS bundle ID. Check
the `PRODUCT_BUNDLE_IDENTIFIER` value in the `.pbxproj` file or the
`Info.plist` file.
1. **Create Firebase Project:** If no project exists, create one:
`npx -y firebase-tools@latest projects:create <project-id> --display-name="My Awesome App"`
1. **Create Firebase App:** Register the iOS app with the discovered bundle ID:
`npx -y firebase-tools@latest apps:create IOS <bundle-id>`
1. **Link the GoogleService-Info.plist file:** Use the script in the
`xcode-project-setup` skill to obtain the config and link.
## Add Swift Package Dependencies
Install the Remote Config and Analytics SDKs using the Swift package manager.
Install the `FirebaseRemoteConfig` and `FirebaseAnalytics` packages from the
[https://github.com/firebase/firebase-ios-sdk.git](https://github.com/firebase/firebase-ios-sdk.git)
repository.
## Initialize Firebase in App Code
Modify the application's entry point to initialize Firebase. Refer to the iOS
setup reference in the firebase-basics skill.
## Follow up Steps
The following steps cover the essential patterns for using Remote Config
effectively in your iOS app.
### Set In-App Defaults
Define default values so your app behaves as intended before it connects to the
backend. Create a property list file (e.g., RemoteConfigDefaults.plist):
````
```xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>welcome_message</key>
<string>Welcome to the app!</string>
<key>is_feature_enabled</key>
<false/>
</dict>
</plist>
```
````
Then, initialize the SDK and set the defaults:
````
```swift
import FirebaseRemoteConfig
let remoteConfig = RemoteConfig.remoteConfig()
remoteConfig.setDefaults(fromPlist: "RemoteConfigDefaults")
```
````
### Fetch and Activate Values
To retrieve values from the cloud and apply them to your app:
````
```swift
remoteConfig.fetchAndActivate { (status, error) in
if status == .successFetchedFromRemote || status == .successUsingPreFetchedData {
print("Config fetched and activated!")
} else {
print("Config not fetched")
}
// Access a value
let message = remoteConfig.configValue(forKey: "welcome_message").stringValue
}
```
````
SHA-256: 78ab3411ec4de8e2d881991845e1019e1e233102967e8a1dbda9a4c9a963f9fd