Copyright © 2026 Unity Technologies
The change that happened in 2019.2.8 was a switch to using single NSURLSession for all downloads. The reason for change was to reduce memory usage, as separate session per request meant not only more memory used, but there were also issues related to how iOS handles secure connections under the hood, keeping some resources for a while in use even after request is complete, resulting in memory usage increase with each request in a memory-leak like fashion. Also, on mobile platforms network speed usually plays a more significant role, speed tests using great wi-fi connection are a bit synthetic. We believe that lower footprint for handling requests is more valuable here and it's a worthy tradeoff to have slightly slower individual downloads.
How to reproduce:
1. Open the attached project "BundleDownload.zip" on 2019.2.7f2 or lower
2. Build and Run the Scene "bundledownload" for iOS
3. In the build, change the number in the Text field to a value between 2 and 20
4. Press the "DL Many" button
5. Once the downloads finish, observe the time it took, shown in the bottom left
6. Upgrade a project to a version from the list of reproducible versions
7. Repeat steps 1-5
8. Compare the time values
Expected result: On newer versions, it takes the same amount of time, or less to complete the download
Actual result: There is a noticeable increase in download time
Reproducible with: 2019.2.8f1, 2020.3.42f1, 2021.3.15f1, 2022.1.24f1, 2022.2.1f1, 2023.1.0a22
Not reproducible with: 2019.2.7f2
Reproduced with:
Notes:
Issues you vote on will appear here