<img src="https://img.shields.io/badge/%20iOS-V3-yellow?logo=apple" style="float:left"/><br />
After reading our [documentation](🔗), reviewing our code samples, and examining our demo and best practice apps, you may still be unable to resolve an app issue. At this point, you should submit a support ticket that links to a native project that builds a reproduction app, which JWP's Support Team can access.
Reproduction apps reduce the time necessary to resolve your issue in several ways:
Clearly shows your implementation using our framework
Eliminates non-essential code and project settings that can mask an issue
Enables the Support Team to suggest code revisions
<br /> <hr />
## Create a reproduction app
When submitting a support ticket for an iOS SDK issue, follow these steps:
Clone one of the following projects to your local machine.<br />If you are unfamiliar with how to clone a project or repository, read GitHub's <a href="https://docs.github.com/en/free-pro-team@latest/github/creating-cloning-and-archiving-repositories/cloning-a-repository#about-cloning-a-repository" target="_blank">Cloning a repository</a>.
Project | Usage |
<a href="https://github.com/jwplayer/jwplayer-sdk-ios-demo" target="_blank">Basic Demo App</a> | Standard JWP features and functionality.<br /><br />For example:<br />   • Advertising issues<br />   • Playback |
<a href="https://github.com/jwplayer/jwplayer-ios-bestPracticeApps/tree/main-v3" target="_blank">Best Practice App</a> |    • Advanced integrations with mobile device native frameworks<br /><br /><em>Examples: enabling locking screen controls, casting, embedding in scrolling tables and lists</em> |
From Xcode, open the project.
In the **Podfile**, <[update the SDK version](🔗).
Add your license key to the **ViewController** file.<br />• Press **⌘ + ⇧ + O**.<br />• Type the name of the file: **SwiftViewController.swift** (Swift) or **ObjCViewController.m** (Objective-C).
<br />
Update the player configuration to match the setup that you want the Support team to troubleshoot. The following table lists a few common use cases and relevant configuration updates.
Setup | Description |
**Advertising** | Add the `JWAdConfig ` object.<br /><br />Refer to our [advertising documentation](🔗) if you need assistance. |
**Callbacks** | • Set the `delegate ` property of the player to `self `.<br /><br />• Set the `SwiftViewController ` class to adopt the `JWPlayerDelegate ` protocol. |
**HLS Streams**<br /><em>(DVR-enabled, Live Event streams, video on-demand)</em> | Replace the default content URL with your test stream.<br /><br /> For example, if using our basic demo app, then modify the `JWConfig ` object found in `viewDidLoad `, `let config = JWConfig(contentURL: "YOUR ASSET URL HERE") ` |
Save and zip your project with your commits.<br />• Press **⌥ + ⌘ + C** to open the commit window.<br />• Select the **Commit** button to commit your changes to the git record.<br />• Close the project. <br />• Zip the entire project.

It is safe to delete the **Pods** folder to save space. This folder will be recreated by the Support team when `
$ pod install
` is run.
<br />
Upload the zipped project to your server at a publicly-accessible link. If you are unable to upload the zipped project to a server, you can attach the .zip file in your email response to the Support email response you receive after you submit a support ticket.
<br /> <hr />
## Submit a support ticket
Initiate <a href="https://support.jwplayer.com/submit-support-case" target="_blank">submitting a support case</a>. If you are not already logged into your JWP dashboard, you will be prompted to log in.
Click **I have a question for the technical support team.**
From the **Category** drop-down menu, select **SDKs - I need help using the Android or iOS SDK**.
Click the **iOS** check box.
Enter a **Subject** for your issue.
Copy following content. Paste it into the **Description** field. Provide as much detail as possible.
In the **Reproduction page** page field, enter the URL of the .zip file that you uploaded to your server. If you are unable to upload the zipped project to a server, attach the .zip file in your email response to the Support email response you receive after you submit a support ticket.
If you have screenshots, upload them to Dropbox, Google Drive, or Imgur. In the **Link to screenshot** field, enter the URL to the uploaded screenshots.
Enter an **Additional Email** to have someone else in your organization copied on case communications.
Answer the remaining questions.
Click **Submit**.
<br />