質問: お世話になります。 iosアプリの開発プロジェクトにおいて、他社さんの開発チームに自作のUIライブラリを提供することになりました。 CocoaPodsやPackageManagerを用いてGitHubなどに登録したソースを提供する方法は知っているのですが、事情によりソースを公開せずにバイナリファイルのような形式でライブラリを提供する必要があるため、一般的な方法で良い方法をご存知の方がおられましたら、ご教授いただきたいと思います。 よろしくお願いします。
回答: 不特定多数に配布するわけではなく、特定一社への提供でしたら、zipなどで固めたファイルをメールや、id/passが必要なwebページに載せておくので充分ではないでしょうか? 拘るべきは、配布の仕組みではなく、ライブラリーのバージョン管理で、必要に応じて挿し変えるライブラリーのバージョンがあやふやにならないようにinfo.plistのバージョンをしっかり管理することだとおもいます。 12/20 追記 特定複数社への配布である件、了解しました。 連携を取っている会社へしか配布したくないのであれば、 * コストが掛かっても構わないのであれば、`GitHub`のプライベートリポジトリーへ(プライベートリポジトリー作成は有償アカウントでなければ作れません) * コストは掛けたくないのであれば、`BitBucket`のプライベートリポジトリーへ ビルド後の`framework`だけを管理するリポジトリーを作って上記いずれかを`master`にし、`GitHub`/`BitBuket`上のリポジトリーを連携する会社に伝えるのはいかがでしょうか? `framework`の更新があった際は、そのリポジトリーの`framewrok`を最新のビルドで上書きし、コミット後に`push`することで、各社が使えるようになりますし、連携する会社では、各社のプロジェクトに`git submodule add [上記のリポジトリー]`として貰うことで、それぞれのプロジェクトにサブモジュールという形で追加され、`Git`で管理(ローカルリポジトリー内でバージョンの変更(`checkout`)や最新のものを取得(`pull`))出来ますので、バイナリーを配布するより手間が掛からないと思います。 また、`Carthage`や`CocoaPods`など、特定のシステムに縛られないので、各社がこちらが提供するシステムでない方を採用していたときのバッティングが起きないのもメリットです。