どんな記事?
生まれて初めてのAndroidStudioのプロジェクト名変更に失敗した。
手塩にかけてつくったアプリがもう起動できない。悲しい。
そんなふうに嘆いていたら、読んでください。助けになるかもしれません。
僕はこれを教えてくれた職場の後輩に心から感謝します。
どんなやり方?
GitHubを使います。
言い忘れましたが、プロジェクト名を変更しようとして他のところで調べたやり方で失敗し、なおかつ直前でGitHubにプッシュしていた中途半端な運の人が対象の記事です。ここでだめならまたほかを探してください。諦めてはいけません。
詳しいやり方
まずはGitHubのプロジェクト名を変更します。
この中の[Settings]をクリックします。
すると上のようなリポジトリ名変更欄がありますので、変更したいプロジェクト名に変更します。
当然ですがリポジトリ名が変わります。
次にAndroidStudio側です。
先程名前を変えたリポジトリをクローンします。
新しいプロジェクトとしてチェックアウトしてください。
こんな感じでできます。
すると!
…特に中身は何も変わっちゃいません。
ここでリファクタリングです。
左上をAndroidに切り替え、app配下の自分のmainディレクトリ上で右クリック。
以下のようなメニューが出たら、Refactorを押します。
色々警告されることもあるかもしれませんが失敗してもでえじょうぶだGitHubで生き返れる。いい世の中になったものだ。
迷わず[Refactor package] [Refactor directory]を実行します。
もう少しです、大切なアプリのためなので頑張りましょう。
上の画像の左上で[Android]となっている箇所をクリックして、[Project]に切り替えます。
するとたぶん、[旧プロジェクト名.iml]というファイルがあるはずです。
これの名前を新プロジェクト名に変更します。
このファイルを開くとまたもやにっくき旧プロジェクト名を見つけることができるので、そこも変えておきましょう。
画像でOldProjectとなっているところがそれです。
この時点で、ビルド時に赤いエラーが出ることは無くなるはずです。
さて、ビルドができたからと言って安心してはいられません。
インストールして実行するまでがアプリです。
結論いうと、まだできません。
先程の.imlの下の方を見てください。
最後の刺客はここにいます。
開いたらすぐわかります。
このプロジェクト名を書き換えます。
…
…
お疲れ様でした!
これにて再びアプリの元気な姿を見ることができました!
おまけです。
実はもう一箇所旧プロジェクト名が残っているかもしれません。
[AndroidManifest.xml]です。
リファクタリングでパッケージ名は大丈夫ですが、
プロジェクト名をそのままアプリ名にしていると残っています。
変えたい人はここも変えましょう。
以上です。
そもそもどう駄目だったのか
他の方々が説明してくださっているように、Refactoringを実行し、imlも変更しました。AndroidManifest.xml,build.gradleの中身も書き換えましたがそれでも動きませんでした。どうしても赤いエラーがつきまといます。
一見ビルド成功したように見えますがログ画面に赤いエラーが出てきてました。
ここで紹介したやり方は上記のやり方の前にGitHubからのクローンを挟んだだけのことです。
最後に
なにか間違っていること、補足などあればなんなりとお願いします。