Here is some points about each of them
- Most widely used dependency manager.
- Almost every popular libraries, framework vendors provides pod for their library/framework.
- You can try the libray and its usage without manually downloading it manually.
pod try command
- You should manage your project with a workspace.
- If any vendor is not adding or updating their library's pod spec, it will be difficult to maintain.
- No need to keep the project in a workspace.
- Its not a centralized system, that is no need to wait for the vendor to update/add the library to any centralized repo.
- Need to add your frameworks to project for the first time.
Swift Package Manager
- Product from creators/maintainers of swift itself.
- Not very popular.
- Still need to be adapted by the developer community.
- You have full control.
- You can edit(if the license allows to..).
- Need manual work to add dependencies.
- Difficult to update libraries.
- Not sure whether we can add Objective-C libs to project using Swift Package Manager.
I would suggest to use
CocoaPods because its very simple to use and will get enough help and resources from the internet. But keep in mind, its still in beta.