LoginSignup
0
3

More than 1 year has passed since last update.

【iOS】世界一分かりやすいオープンソースライブラリの実装

Last updated at Posted at 2022-01-24

はじめに

アプリをリリースする際に著作権情報として使用したライブラリのライセンスを表示するかと思います。
LicensePlistを使用すると一発で使用中ライブラリを取得し設定アプリに表示してくれます。
アプリにコピペしなくて済む上に、ライブラリの追加・更新作業も自動でやってくれます。
もし他のサイトを参考にやってみたけどうまくできないという方にもお勧めです。

実装

今回はCocoaPodsにて導入していきます。
Podfileにて↓を記入してpod installします。

pod 'LicensePlist'

プロジェクトを開き、NewFileにてSettings Bundleを追加します。

スクリーンショット 2022-01-24 15.45.04.png

名前はこのままで大丈夫です。

スクリーンショット 2022-01-24 15.52.37.png

こんな感じで追加されるので、このen.lprojという名前のフォルダをDeleteで削除します。

スクリーンショット 2022-01-24 15.46.09.png

次にもう一つのRootというファイルを選択して右クリックでOpen As → Source Codeを選択します。

スクリーンショット 2022-01-24 15.46.43.png

XMLコードが表示されるので、全て削除し代わりに↓を追加してください。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>PreferenceSpecifiers</key>
        <array>
            <dict>
                <key>Title</key>
                <string>Licenses</string>
                <key>Type</key>
                <string>PSChildPaneSpecifier</string>
                <key>File</key>
                <string>com.mono0926.LicensePlist</string>
            </dict>
        </array>
        <key>StringsTable</key>
        <string>Root</string>
    </dict>
</plist>

こんな感じになるかと思います。

スクリーンショット 2022-01-24 15.47.52.png

次にBuild Phasesにて+ボタンを押してNew Run Script Phaseを選択します。
(Build Phasesの場所が分からない方は、もう少し下に画像があるので参考にしてください。)

スクリーンショット 2022-01-24 15.28.21.png

Run Scriptが追加されるので↓を追加します。

if [ $CONFIGURATION = "Debug" ]; then
    ${PODS_ROOT}/LicensePlist/license-plist --output-path ${PRODUCT_NAME}/Settings.bundle
fi

※任意ですがRun Scriptの名前を変更した方が分かりやすいです。(例)Run LicensePlist など…。

スクリーンショット 2022-01-24 15.24.34.png

ここで一度実機ビルドをし、Settings Bundleの中に↓が追加されているか確認してください。
※もし、表示されないよという方はおまけにお進みください。

スクリーンショット 2022-01-24 15.44.29.png

設定アプリにて自分のアプリを選択し、Licensesという項目を開いていただくと使用しているライブラリのライセンス一覧が表示されると思います。

これにて実装完了です。お疲れ様でした。

おまけ

私の場合Settings BundleをSupportFilesというフォルダの中に作成していたので↓の画像のように、先ほどBuild Phasesに追加したコードの/Settings.bundleという記述の前に/SupportFilesを追加しています。
設定アプリにちゃんと表示されないよって方は確認してみて下さい。

スクリーンショット 2022-01-24 16.10.06.png

0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3