プログラミングスクール最大70%OFF! ←クリックして見に行く

【Xcode】作成済みのiOSアプリ名(プロジェクトファイル名)を変更する方法!

【Xcode】作成済みのiOSアプリ名(プロジェクトファイル名)を変更する方法!

今回作成済みのアプリの名前を変更する際に色々苦労したので、
備忘録として残しておこうと思いました_φ(・_・ )

アプリ名とは

Xcodeでプロジェクト作成時に設定している「Product Name」です。
このアプリ名がプロジェクトファイル名となります。

プロジェクト作成後に名前を確認する方法

以下の順に選択して確認できます。
プロジェクトファイル > Build Setting > Packaging > Product Name

Memo

設定されている値を見ると「$(TARGET_NAME)」の変数が入っているので、
③の「TARGETS」で設定している名称がProduct Nameに反映されています。

Product Nameの値の変更のみなら既存の「$(TARGET_NAME)」を削除して変更し、
プロジェクト名を変更する場合は③TARGETSの値を変更します。

プロジェクト名の変更手順

今回「AppName」から「AppRename」へ名前を変更していきます。

「プロジェクト名.xcodeproj」からXcodeを起動

Attention

CocoaPodsを組み込んでいる場合でもxcworkspaceではなくxcodeprojから起動して変更してください。

プロジェクトファイルを選択して手動で名前変更

名前を選択した状態で、再度クリックすると編集できます。

・変更後の確認ダイアログで「Rename」をクリック
付随して他の名称も自動で変更してくれます!

・ダイアログで「Continue」を選択

Memo

The working copy AppName has uncommitted changes.
Do you want to continue renaming project “AppName” to “AppRename”? It may not be possible to undo this operation.
↓翻訳
作業コピー AppName にはコミットされていない変更があります。
プロジェクト名「AppName」を「AppRename」に変更する操作を続けますか?この操作を取り消すことはできない場合があります。

一部「AppRename」に変更されました!

プロジェクト直下のディレクトリ名は手動で変更

一括で名前が変更されなかった部分は自分で直す必要がありますので、クリックして修正します。

Memo

ディレクトリ名変更の場合はポップアップは出ません。

Info.plistまでのパスを変更

Build Setting > Packaging > Info.plist File に記載されているパス内のアプリ名を新しい名前に変更

Point

「Product Bundle Identifier」がInfo.plistパスのすぐ下にあるので、ついでに修正しちゃいましょう!

Attention

パスを修正しないでビルドをすると以下のエラーが表示されます。
error: Build input file cannot be found: ‘/Users/administrator/Desktop/AppName/AppName/Info.plist’ (in target ‘AppRename’ from project ‘AppRename’)

Memo

CocoaPods使用時は以下の手順も踏む。
・Podfile内のアプリ名変更
・Podsディレクトリ/Podfile.lock/旧アプリ名.xcworkspaceの削除
・ターミナルよりpod installの実行

ファイル内の文字列を一括置換

ファイル名を変更しても、それぞれのファイルには作成時の名前が記載されてしまっています。

shift ⇧ + command ⌘ + F のショートカットでも検索窓を表示
Xcode_検索窓

・「Find」から「Replace」に変更
Xcode_検索窓_置換

・上に「変更前のアプリ名」、下に「変更後のアプリ名」を入力し「Replace All」ボタンをクリック
Xcode_検索窓_アプリ名_一括置換

Attention

plistの中身は一括置換で変換されないので、検索窓から変更前のアプリ名で検索しながら手動で変更する必要があります。

これで名前変更完了です👏
Finderからも名前が変更されているのがわかりますね!

あとがき

作業お疲れさまでした!
名前はもっとシンプルに変更できるかと思ったら結構面倒でしたね(∩’-‘⊂)シュッ

もし記事に誤りや、
追記すべき点などあればお問合せいただけますと幸いです。

それでは次の記事で会いましょう!

Swiftカテゴリの最新記事