> ## Documentation Index
> Fetch the complete documentation index at: https://guide.daro.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Getting Started

> Integrate the DARO iOS SDK into your app.

## Before You Begin

Check requirements before integration.

### Requirements

* iOS 13.0 or higher
* Xcode 26 or higher (required from 1.1.56 onwards, applies to both CocoaPods and SPM)

<Check>
  Verify [app-ads.txt setup](https://guide.daro.so/en/app-ads-txt-settings) before proceeding.
</Check>

***

## Install SDK

You can install the Daro SDK with either `CocoaPods` or `Swift Package Manager (SPM)`. Choose the method you prefer in the tabs below.

<Note>
  **Reward apps (DaroMAds / DaroMObjCBridge) are CocoaPods only** at this time. SPM support starts in 1.1.56 for Non-reward apps (`DaroAds`, `DaroObjCBridgeAds`).
</Note>

<Tabs>
  <Tab title="CocoaPods">
    ### Non-reward Apps

    <Tabs>
      <Tab title="Swift">
        ```ruby theme={null}
        use_frameworks!

        # https://github.com/delightroom/daro-ios-sdk/releases
        pod 'DaroAds', '1.1.68'
        ```
      </Tab>

      <Tab title="Objective-C">
        ```ruby theme={null}
        use_frameworks!

        # https://github.com/delightroom/daro-ios-sdk/releases
        pod 'DaroObjCBridge', '1.1.68'
        ```
      </Tab>
    </Tabs>

    ### Reward Apps

    <Tabs>
      <Tab title="Swift">
        ```ruby theme={null}
        use_frameworks!

        # https://github.com/delightroom/daro-ios-sdk/releases
        pod 'DaroMAds', '1.1.68'
        ```
      </Tab>

      <Tab title="Objective-C">
        ```ruby theme={null}
        use_frameworks!

        # https://github.com/delightroom/daro-ios-sdk/releases
        pod 'DaroMObjCBridge', '1.1.68'
        ```
      </Tab>
    </Tabs>

    Run the following command in your terminal:

    ```bash theme={null}
    pod install --repo-update
    ```
  </Tab>

  <Tab title="Swift Package Manager">
    <Note>
      SPM only supports **Non-reward apps** (`DaroAds`, `DaroObjCBridgeAds`). For Reward apps, see the CocoaPods tab.
    </Note>

    ### Non-reward Apps

    <Tabs>
      <Tab title="Swift">
        **Xcode GUI (recommended)**

        1. Open your project in Xcode.
        2. Choose **File > Add Package Dependencies…**.
        3. Enter the following URL in the search field:
           ```
           https://github.com/delightroom/daro-ios-sdk.git
           ```
        4. Set **Dependency Rule** to `Exact Version` and enter version `1.1.68`.
        5. Click **Add Package**, then add the **`DaroAds`** library to your app target.

        **Package.swift**

        ```swift theme={null}
        dependencies: [
            .package(
                url: "https://github.com/delightroom/daro-ios-sdk.git",
                exact: "1.1.68"
            ),
        ],
        targets: [
            .target(
                name: "YourApp",
                dependencies: [
                    .product(name: "DaroAds", package: "daro-ios-sdk"),
                ]
            ),
        ]
        ```
      </Tab>

      <Tab title="Objective-C">
        **Xcode GUI (recommended)**

        1. Open your project in Xcode.
        2. Choose **File > Add Package Dependencies…**.
        3. Enter the following URL in the search field:
           ```
           https://github.com/delightroom/daro-ios-sdk.git
           ```
        4. Set **Dependency Rule** to `Exact Version` and enter version `1.1.68`.
        5. Click **Add Package**, then add the **`DaroObjCBridgeAds`** library to your app target (note: this name differs from the CocoaPods pod name `DaroObjCBridge`).

        **Package.swift**

        ```swift theme={null}
        dependencies: [
            .package(
                url: "https://github.com/delightroom/daro-ios-sdk.git",
                exact: "1.1.68"
            ),
        ],
        targets: [
            .target(
                name: "YourApp",
                dependencies: [
                    .product(name: "DaroObjCBridgeAds", package: "daro-ios-sdk"),
                ]
            ),
        ]
        ```

        Import in Objective-C code:

        ```objc theme={null}
        #import <DaroObjCBridge/DaroObjCBridge.h>
        ```
      </Tab>
    </Tabs>

    <Warning>
      **`-ObjC` linker flag required when using SPM**

      Whether your app is Swift or Objective-C, when integrating DaroAds / DaroObjCBridgeAds via Swift Package Manager you **must** add `-ObjC` to your app target's **Build Settings > Other Linker Flags (`OTHER_LDFLAGS`)**. Without this flag, some ad demand adapters will fail to load at runtime.

      See the [Other Linker Flags](#other-linker-flags) section below for setup steps.
    </Warning>
  </Tab>
</Tabs>

***

## Configure Your App

<Accordion title="Update Info.plist" description="Add the following IDs to your Info.plist." icon="sparkles">
  ```
  <key>GADApplicationIdentifier</key>
  <string> /* Add Admob Key issued from Daro Dashboard */ </string>
  <key>DaroAppKey</key>
  <string> /* Add Daro App Key issued from Daro Dashboard */ </string>
  <key>SKAdNetworkItems</key>
  <array>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>cstr6suwn9.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>4fzdc2evr5.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>4pfyvq9l8r.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>2fnua5tdw4.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>ydx93a7ass.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>5a6flpkh64.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>p78axxw29g.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>v72qych5uu.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>ludvb6z3bs.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>cp8zw746q7.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>3sh42y64q3.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>c6k4g5qg8m.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>s39g8k73mm.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>3qy4746246.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>f38h382jlk.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>hs6bdukanm.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>v4nxqhlyqp.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>wzmmz9fp6w.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>yclnxrl5pm.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>t38b2kh725.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>7ug5zh24hu.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>gta9lk7p23.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>vutu7akeur.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>y5ghdn5j9k.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>n6fk4nfna4.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>v9wttpbfk9.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>n38lu8286q.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>47vhws6wlr.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>kbd757ywx3.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>9t245vhmpl.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>eh6m2bh4zr.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>a2p9lx4jpn.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>22mmun2rn5.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>4468km3ulz.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>2u9pt9hc89.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>8s468mfl3y.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>klf5c3l5u5.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>ppxm28t8ap.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>ecpz2srf59.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>uw77j35x4d.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>pwa73g5rt2.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>mlmmfzh3r3.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>578prtvx9j.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>4dzt52r2t5.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>e5fvkxwrpn.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>8c4e2ghe7u.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>zq492l623r.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>3rd42ekr43.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>3qcr597p9d.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>mj797d8u6f.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>55644vm79v.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>6yxyv74ff7.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>55y65gfgn7.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>cwn433xbcr.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>nu4557a4je.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>w7jznl3r6g.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>577p5t736z.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>6rd35atwn8.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>7bxrt786m8.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>7fbxrn65az.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>dt3cjx1a9i.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>fz2k2k5tej.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>jk2fsx2rgz.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>r8lj5b58b5.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>tmhh9296z4.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>k6y4y55b64.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>qwpu75vrh2.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>252b5q8x7y.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>4mn522wn87.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>7fmhfwg9en.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>8r8llnkz5a.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>dbu4b84rxf.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>dkc879ngq3.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>eh6m2bh4zr.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>f7s53z58qe.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>g6gcrrvk4p.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>gta8lk7p23.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>krvm3zuq6h.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>lr83yxwka7.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>mj797d8u6f.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>qu637u8glc.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>s69wq72ugq.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>v79kvwwj4g.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>vhf287vqwu.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>vutu7akeur.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>x5l83yy675.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>x8jxxk4ff5.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>x8uqf25wch.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>xga6mpmplv.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>ln5gz23vtd.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>z959bm4gru.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>vutu7akeur.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>eh6m2bh4zr.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>cstr6suwn9.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>578prtvx9j.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>9t245vhmpl.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>v72qych5uu.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>x8uqf25wch.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>7ug5zh24hu.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>hs6bdukanm.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>dbu4b84rxf.skadnetwork</string>
  </dict>
  <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>8c4e2ghe7u.skadnetwork</string>
   </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>238da6jt44.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>24t9a8vw3c.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>24zw6aqk47.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>275upjj5gd.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>294l99pt4k.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>32z4fx6l9h.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>3l6bd9hu43.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>424m5254lk.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>44jx6755aq.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>44n7hlldy6.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>488r3q3dtq.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>4w7y6s5ca2.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>523jb4fst2.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>52fl2v3hgk.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>54nzkqm89y.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>5f5u5tfb26.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>5l3tpt7t6e.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>5lm9lj6jb7.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>5tjdwbrq8w.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>6964rsfnh4.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>6g9af3uyq4.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>6p4ks3rnbw.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>6v7lgmsu45.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>6xzpu9s2p8.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>737z793b9f.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>74b6s63p6l.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>77y3x8wds4.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>7953jerfzd.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>79pbpufp6p.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>7rz58n8ntl.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>84993kbrcf.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>87u5trcl3r.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>89z7zv988g.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>8m87ys6875.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>97r2b46745.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>9b89h5y424.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>9g2aggbj52.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>9nlqeag3gk.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>9rd848q2bz.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>9vvzujtq5s.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>9yg77x724h.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>a7xqa6mtl2.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>a8cz6cu7e5.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>apzhy3va96.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>av6w8kgt66.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>b9bk5wbcq9.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>bvpn9ufa9b.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>bxvub5ada5.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>c3frkrj4fj.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>ce8ybjwass.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>cg4yq2srnc.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>cj5566h2ga.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>cs644xg564.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>dzg6xy7pwj.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>ejvt5qm6ak.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>f2zub97jtl.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>f73kdq92p3.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>feyaarzu9v.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>fq6vru337s.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>g28c52eehv.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>g2y4y55b64.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>ggvn48r87g.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>glqzh8vgby.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>gvmwg8q7h5.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>h65wbv5k3f.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>hb56zgv37p.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>hdw39hrw9y.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>hjevpa356n.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>k674qkevps.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>kbmxgpxpgc.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>m297p6643m.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>m5mvw97r93.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>m8dbw4sv7c.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>mls7yz5dvl.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>mp6xlyr22a.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>mqn7fxpca7.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>mtkv5xtk9e.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>n66cz3y3bx.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>n9x2a789qt.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>ns5j362hk7.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>nzq8sh4pbs.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>p4ybsjem3u.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>prcb7njmu6.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>pu4na253f3.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>pwdxu55a5a.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>qqp299437r.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>r45fhb6rf7.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>rvh3l7un93.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>rx5hdcabgc.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>sczv5946wb.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>su67r6k2v3.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>t6d3zquu66.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>tl55sbb4fm.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>tvvz7th9br.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>u679fj5vs4.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>vcra2ehyfk.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>w9q455wk68.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>wg4vff78zm.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>x2jnk7ly8j.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>x44k69ngh6.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>x8yj322td6.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>xy9t38ct57.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>y45688jllp.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>yrqqpx2mcb.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>z24wtl6j62.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>z4gj7hsk7h.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>zmmz9fp6w.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>zmvfpc5aq8.skadnetwork</string>
    </dict>
  </array>
  ```
</Accordion>

<Note>
  Find `GADApplicationIdentifier` and `DaroAppKey` in DARO Dashboard (AdMob Key, App Key).
</Note>

<Note>
  Copy `SKAdNetworkItems` from Info.plist to your app's Info.plist. Required for ad demand sources to receive conversion performance reports. Significantly affects ad performance.
</Note>

### Add ios-daro-key.txt File

Add `ios-daro-key.txt` to your Xcode project. Contains SDK settings and configuration. ⚠️ File must be included to initialize SDK.

<Note>
  Download `ios-daro-key.txt` from DARO Dashboard. Click Download button in Key File column on app list.
</Note>

Xcode > BuildPhase Example

<img src="https://mintcdn.com/delightroom-5a71a6a8/zubkjN5vMaM7lt41/sdk-integration/ios_new/img/daro-key-import.png?fit=max&auto=format&n=zubkjN5vMaM7lt41&q=85&s=934869ddba2b6faa295b98dd55156a83" alt="Xcode ios-daro-key.txt example" width="600" title={true} data-path="sdk-integration/ios_new/img/daro-key-import.png" />

### Other Linker Flags

<Warning>
  **When `-ObjC` is required**

  You **must** add `-ObjC` to your app target's **Build Settings > Other Linker Flags (`OTHER_LDFLAGS`)** if any of the following applies:

  * Objective-C project
  * Swift project integrating `DaroAds` or `DaroObjCBridgeAds` via Swift Package Manager (required so ad demand adapters are detected at runtime)

  Without this flag, the SDK may not work correctly or some ad demand sources will fail to load.
</Warning>

Follow these steps in Xcode project settings:

1. Select your project file in Xcode
2. Select the **Build Settings** tab
3. Search for "Other Linker Flags"
4. Add `-ObjC` to **Other Linker Flags**

***

## Initialize SDK

<Warning>
  **Important: Load Ads After Initialization**

  Load all ads after SDK initialization completes. Requesting ads before initialization may prevent proper display.
</Warning>

Add to your app's `AppDelegate` file:

<Tabs>
  <Tab title="Swift">
    ```swift theme={null}
    non-reward app >> import Daro
    reward app >> import DaroM

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // Start SDK
        DaroAds.shared.initialized { error in
          if let error {
            print("Daro SDK initilized error : \(error)")
          } else {
            print("Daro SDK initialized successfully")
          }
        }

        // (Optional) Set user ID
        DaroAds.shared.userId = "user_id"

        // (Optional) Set log level
        DaroAds.shared.logLevel = .debug  // .off, .error, .debug

        return true
    }
    ```
  </Tab>

  <Tab title="Objective-C">
    ```objc theme={null}
    non-reward app >> #import <DaroObjCBridge/DaroObjCBridge.h>
    reward app >> #import <DaroMObjCBridge/DaroMObjCBridge.h>

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
        // (Optional) Set user ID - recommended before SDK initialization
        [DaroObjCAds shared].userId = @"user_id";

        // (Optional) Set log level - recommended before SDK initialization
        [DaroObjCAds shared].logLevel = DaroObjCLogLevelDebug;  // Off, Error, Debug

        // Start SDK
        [[DaroObjCAds shared] initializeWithCompletion:^(NSError * _Nullable error) {
            if (error) {
                NSLog(@"Daro SDK initialized error: %@", error);
            } else {
                NSLog(@"Daro SDK initialized successfully");
            }
        }];

        return YES;
    }
    ```
  </Tab>
</Tabs>

### Preventing currentWindow Crashes

<Warning>
  **currentWindow-Related Crashes in Some Ad SDKs**

  Some ad SDKs may throw `unrecognized selector sent to instance` exceptions when accessing `UIApplication.shared.delegate.window`. This occurs when the AppDelegate doesn't have a window property defined in SceneDelegate or SwiftUI environments.

  Add the following variable to your AppDelegate to prevent this issue:
</Warning>

<Tabs>
  <Tab title="Swift">
    ```swift theme={null}
    @main
    class AppDelegate: UIResponder, UIApplicationDelegate {
        var window: UIWindow?

        // ... rest of your code
    }
    ```
  </Tab>

  <Tab title="Objective-C">
    ```objc theme={null}
    @interface AppDelegate : UIResponder <UIApplicationDelegate>

    @property (nonatomic, strong) UIWindow *window;

    @end
    ```
  </Tab>
</Tabs>

### Log Level

Daro SDK supports the following log levels:

* `.off` / `Off`: No log output
* `.error` / `Error`: Only error logs
* `.debug` / `Debug`: All log output (recommended during development)

<Tabs>
  <Tab title="Swift">
    ```swift theme={null}
    DaroAds.shared.logLevel = .debug
    ```
  </Tab>

  <Tab title="Objective-C">
    ```objc theme={null}
    [DaroObjCAds shared].logLevel = DaroObjCLogLevelDebug;
    ```
  </Tab>
</Tabs>

### Set User ID

Set `userId` property if your app requires user identification. Value sends with all ad requests.

<Tabs>
  <Tab title="Swift">
    ```swift theme={null}
    DaroAds.shared.userId = "user_id"
    ```
  </Tab>

  <Tab title="Objective-C">
    ```objc theme={null}
    [DaroObjCAds shared].userId = @"user_id";
    ```
  </Tab>
</Tabs>

### App Mute Setting

For app open, banner, interstitial, rewarded, rewarded interstitial, and native ad formats, you can use the `setAppMuted` method to inform the Daro SDK that the app volume has been muted.

<Tabs>
  <Tab title="Swift">
    ```swift theme={null}
    // Mute app
    DaroAds.shared.setAppMuted(true)

    // Unmute app
    DaroAds.shared.setAppMuted(false)
    ```
  </Tab>

  <Tab title="Objective-C">
    ```objc theme={null}
    // Mute app
    [[DaroObjCAds shared] setAppMuted:YES];

    // Unmute app
    [[DaroObjCAds shared] setAppMuted:NO];
    ```
  </Tab>
</Tabs>

<Tip>
  Native ads apply the mute state to video playback at load time. Call `setAppMuted` before loading native ads.
</Tip>

<Warning>
  **App Mute Usage Precautions**

  When app mute is enabled, some video ad creatives that cannot play while muted may be excluded from ad requests, which can slightly reduce the ad pool and affect revenue.
</Warning>

***

## Precautions

<Warning>
  **Location-Based Background Updates**

  Apps using location-based background updates that display ads on first screen must implement additional handling to load and display ads when app becomes active.

  See: [Handling Location Updates in the Background](https://developer.apple.com/documentation/corelocation/handling-location-updates-in-the-background)
</Warning>
