# Manual install (/en/realtime-media/rtm/reference/downloads/ios)

> For AI agents: see the complete documentation index at [llms.txt](/llms.txt).

To manually install the Signaling SDK for iOS, do one of the following:

## Automatically integrate the SDK with CocoaPods

1. [Ensure that you have installed CocoaPods](https://guides.cocoapods.org/using/getting-started.html#getting-started).

2. In Terminal, navigate to the project path, and run the `pod init` command to create a `Podfile` in the project folder.

3. Open the `Podfile`, delete all contents, and input the following code:

   ```bash
   target 'Your App' do
       use_frameworks!
       pod 'AgoraRtm_iOS'
   end
   ```

4. Replace `Your App` with the target name of your project.

5. Go back to Terminal, and run the `pod update` command to update the local libraries.

6. Run the `pod install` command to install the Signaling SDK. Once you successfully install the SDK, it shows `Pod installation complete!` in Terminal, and you can see an `xcworkspace` file in the project folder.

7. Open the generated `xcworkspace` file.

## Manually add the SDK files

### v1.4.4 or later

iOS apps integrated with Signaling SDK v1.4.4 cannot be published on the App Store due to review issues. If you want to publish your app on the App Store, you must use other versions of the SDK.

1. Extract the files in [Signaling SDK](/en/api-reference/sdks?product=signaling\&platform=ios) to a local folder.

2. Copy `AgoraRtmKit.xcframework` from the SDK to your project.

3. Open Xcode, and navigate to **TARGETS > Project Name > General > Frameworks, Libraries, and Embedded Content**.

4. Click **+ > Add Other... > Add Files** to add the corresponding library. Ensure that the Embed attribute of the dynamic library is **Embed & Sign**.

Once the dynamic library is added, the project automatically links to other system libraries.

The SDK uses the XCFramework. **If you are using a build tool that does not support XCFramework integration**, Agora provides the following scripts to help you integrate:

* Use the `change_to_all_arch.sh` script to convert the XCFramework to the universal framework.
* If you need to publish an iOS app on the App Store, use the `remove_simulator_arch.sh` script to remove the simulator before packaging the app.

The steps to execute these scripts are as follows:

1. Copy the above script files to your project, and execute the following code to generate `AgoraRtmKit.framework`:

   ```bash
   sh change_to_all_arch.sh "<AgoraRtmKit.xcframework path>"
   sh remove_simulator_arch.sh "<AgoraRtmKit.framework path>"
   ```

2. In Xcode, go to the **TARGETS > Project Name > Build Phases > Link Binary with Libraries*&#x2A; menu, and click &#x2A;*+** to add `AgoraRtmKit.xcframework`. Ensure that the **Embed** attribute of the dynamic library is **Embed & Sign**.

### Earlier than v1.4.4

1. Copy the `AgoraRtmKit.framework` file in the `libs` folder to the project folder.

2. In Xcode, go to the **TARGETS > Project Name > Build Phases > Link Binary with Libraries*&#x2A; menu, and click &#x2A;*+** to add the following frameworks and libraries. To add the `AgoraRtmKit.framework` file, remember to click &#x2A;*Add Other...*&#x2A; after clicking &#x2A;*+**.

   * `AgoraRtmKit.framework`
   * `libc++.tbd`
   * `libresolv.tbd`
   * `SystemConfiguration.framework`
   * `CoreTelephony.framework`

    
  
      
  
      
  
      
  
      
  
      
  
      
  
