How to provide libraries for ios apps

Asked 2 years ago, Updated 2 years ago, 119 views

Thank you for your help.
In the development project of the ios application, we decided to provide our own UI library to the development team of other companies.
I know how to use CocoaPods and PackageManager to provide sources registered in GitHub, but due to circumstances it is necessary to provide libraries in a binary file format without disclosing the source, so if you know a good way, please let me know.
Thank you for your cooperation.

swift ios xcode

2022-09-30 21:35

2 Answers

The package managers CocoaPods and Curtage all have binary distribution mechanisms.The Swift Package Manager is not available on iOS and should be omitted here.

For CocoaPods, use vendored_frameworks or vendored_libraries.
https://guides.cocoapods.org/syntax/podspec.html#vendored_frameworks

With Cartage, you can write down the location of the library in a fixed format of JSON.

https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#binary-project-specification


2022-09-30 21:35

Wouldn't it be sufficient to post files hardened by zip or on web pages that require id/pass if they are provided to a specific company instead of distributing them to an unspecified number of people?

I think it's important not to be concerned about the distribution, but to manage the version of info.plist so that the version of the library that you insert and replace as needed is not ambiguous.

12/20 Add

I understand about the distribution to specific companies.
If you only want to distribute to the companies you work with,

  • Go to the private repository of GitHub if you don't mind the cost (you can only create a private repository with a paid account)
  • If you don't want to spend money, go to the BitBucket private repository

Why don't you create a repository that only manages the framework after the build, make one of the above the master and tell the repository on GitHub/ BitBooket to the company you work with?
If there is an update to the framework, overwrite the framework of the repository with the latest build, push after committing, and each partner company will have their project git submodule add [above repository] submode.
Also, it is not tied to specific systems such as Cathage and CocoaPods, so it is also advantageous that there is no batting when each company adopts a system that is not our system.


2022-09-30 21:35

If you have any answers or tips


© 2024 OneMinuteCode. All rights reserved.