# Mobile App Testing in Development Mode

### **Introduction**

This document guides **developers and testers** on how to test the mobile app in **development mode** before it is live on the App Store or Google Play Store. It covers key functionalities such as **universal links, device tracking, and redirection behavior**.

### **Key Features & Testing Steps**

1. **Optional App Store Links During Campaign Setup**

   * Users can **skip** providing **App Store / Google Play Store links** during campaign setup if the app is not yet live
   * These links can be added later once the app is published

   **Testing Steps:**

   1. Create a campaign **without** entering store links.
   2. Verify the campaign is saved successfully.
   3. Later, update the campaign with valid store links and confirm they are stored correctly.
2. **Enabling App Download Tracking (Required for Universal Link)**

   * Before using the **universal link**, the **Track iPhone & Android App Downloads** toggle must be **enabled** in the settings
   * Once enabled, the universal link becomes active and starts capturing device data

   **Testing Steps:**

   1. Go to campaign settings and **enable** the toggle for **Track iPhone & Android App Downloads**
   2. Verify that the universal link is now functional

   <figure><img src="https://363135598-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LsuqexOLPOWiUrWg_Ko%2Fuploads%2FuU7CWNqhP9UsVWq1EM3z%2Fimage.png?alt=media&#x26;token=afcdabdd-a838-42d6-aa42-4ba849794971" alt=""><figcaption></figcaption></figure>
3. **Universal Link Testing & Device Data Capture**

   * Clicking the universal link from any device will log:
     * **IP Address**
     * **Device Type** (iPhone, Android, etc)
     * **Screen Size**
     * **OS Type & Version**
   * This data is stored in the database and visible in the **web dashboard**

   **Testing Steps:**

   1. Click the universal link from a test device (mobile/tablet)
   2. Verify that the device details are recorded in the database
   3. Check the web dashboard to confirm the captured data is displayed correctly
4. **Automatic Redirection to Local APK/SDK App**

   * If the app is **already installed**, the link will **redirect directly** to it
   * If **not installed**, after manual installation (via APK/SDK), the app will:
     * Match the stored device details
     * Register the user based on provided details (name, etc)

   **Testing Steps:**

   1. Click the link on a device **without** the app installed
      1. Ensure no crashes occur
   2. Manually install the app (APK/SDK)
   3. Open the app and verify:
      1. It recognizes the previously stored device data
      2. User registration works (name, email, etc., if required)
5. **Testing with Live Store Links (Post-App Launch)**

   * Once the app is live, users must **update the store links** in the campaign settings
   * After updating, test the live flow to ensure:
     * The correct store page opens when the link is clicked
     * The app install and registration process works as expected

   **Testing Steps:**

   1. Update the campaign with **valid App Store / Google Play Store links**
   2. Click the link and confirm it redirects to the correct store page
   3. Install the live app and verify the registration flow

### **Expected Outcomes**

✅ Campaign setup allows **empty store links** initially

✅ Universal link **captures device data** only after enabling **Track iPhone & Android App Downloads**

✅ Redirection to local APK/SDK works (if installed) or prompts installation

✅ Live store links function correctly after app launch.

### **Troubleshooting**

| Issue                                 | Possible Fix                                            |
| ------------------------------------- | ------------------------------------------------------- |
| **Device details not captured**       | Ensure the **tracking toggle is enabled**               |
| **Universal link not working**        | Check if the link is correctly generated                |
| **App not redirecting after install** | Verify deep linking is configured (by the website team) |
| **Live store links not redirecting**  | Confirm URL formatting is correct                       |

### **Conclusion**

This documentation ensures smooth testing of the app in **development mode** before going live. Developers should:&#x20;

✔ Test on **multiple devices** (iOS & Android)

✔ Validate **database logs** after each test

✔ Confirm **live store links** post-launch

**Next Steps:**

* Perform cross-device testing
* Validate backend logs for accuracy
* Coordinate with the web team for deep link setup (if issues arise)
