Andrdoi Studioで次のようなことがしたい
▼ 現在のアプリパッケージ名
1 |
com.myapp.hogehoge |
▼ これを別のアプリパッケージに変更
1 |
com.myapp.fugafuga |
プロジェクト作成したばかりだったり、アプリリリース前に唐突にアプリパッケージ名を変えたくなったり……そういう場面は多くはないけど存在します。
そこでAndroidStudioでアプリパッケージ名変更、
この手順を自分へのメモも兼ねて覚え書きしておきます。
このページの目次
0.パッケージ名変更の前に注意すべきこと
試す前に大事なことがあります。
それは次の場合はパッケージ名変更できないってこと
- GooglePlayにアプリをリリース済み
- 過去に1回以上アップデートしている
当たり前ですが、既にGooglePlayで公開・更新されているアプリパッケージ名の変更はできません。仮にそうするなら新しくアプリプロジェクト作成した方がいいです。
今回紹介する方法は次のケースで役立ちます。
- まだプロジェクトを作成したばかりの場合
- アプリ初リリース直前に変えたくなった場合
アプリを公開していないという前堤でのやり方です。
初めにこの点をよく確認しておきましょう。
1.ソース上でのアプリパッケージ名を変更
初めにJava/Kotlinソース上での変更が必要
AndroidStudioのプロジェクトツリーを開き、
その中の [app] => [java] => [パッケージ名] を見つけます。
▼ この画像で赤枠で囲ったやつ
そして右クリックしてメニューを開き、[Refactor] => [Rename] をクリックしてください。あるいは Shift+F6 でも同じことができます。
▼ このような確認ダイアログが表示される
これは androidTest とか test などのディレクトリでもパッケージ名を変更するかと聞かれているので、特別な事情がなければ [Rename package] を押せばOKです。
▼ パッケージ名の変更ダイアログが出てくる
あとは好きなパッケージ名を設定してください。
この例では com.myapp.hogehoge => com.myapp.fugafuga に変更したいので、hogehoge => fugafuga と入力して [Refactor] を押すことになります。
▼ 以下の Refactoring Preview が表示される
上記画像のようなリファクタープレビューが表示されるので、確認したら [Do Refactor] を押せばJava/Kotlinソース・AndroidManifest.xmlに対してパッケージ名変更が実行されます。
2.ソース上で新パッケージ名の反映を確認
Java/KotlinソースとかAndroidManifest.xmlを開いてみます。
▼ java/kotlinだったらパッケージ名が変更されてる
1 2 3 4 5 6 7 8 |
/// 変更されたパッケージ名 package com.myapp.fugafuga import ... class MainActivity : AppCompatActivity(){ ... } |
▼ AndroidManifest.xmlも修正される
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.myapp.fugafuga"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.MyApp"> <activity android:name="com.myapp.fugafuga.MainActivity" android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest> |
これでソース的なパッケージ名変更は完了
3.build.gradleでアプリケーションIDを変更
次にパッケージ名に合わせてアプリID変更です。
まずモジュールレベルのbuild.gradleを開きます。
▼ build.gradle (Module:...) を開く
そしてapplicationIdの設定を探します。
▼ android => defaultConfigの中にある
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
android { compileSdkVersion 33 buildToolsVersion "30.0.3" defaultConfig { /// ▼ アプリケーションID applicationId "com.myapp.hogehoge" minSdkVersion 24 targetSdkVersion 33 versionCode 1 versionName "1.0.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } ... } |
▼ 新しいアプリパッケージ名に変更する
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
android { compileSdkVersion 33 buildToolsVersion "30.0.3" defaultConfig { /// ▼ 新しいアプリケーションID applicationId "com.myapp.fugafuga" minSdkVersion 24 targetSdkVersion 33 versionCode 1 versionName "1.0.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } ... } |
あとは [Sync Now] を押せば完了です。
4.必要ならsettings.graldeでプロジェクト名も変更
あとパッケージ名以外にアプリ名も変更する場合…
古いプロジェクト名だと紛らわしいこともあります。
そういう時はプロジェクト名も変更しておきましょう。
▼ settings.gradleというファイルを開く
▼ rootProject.name を新しい名前に修正
1 2 |
rootProject.name = "New MyApp" include ':app' |
上記はビルド作業とかにも影響しません。
だから本当に任意の名前をつけて問題ないです。
パッケージ名変更手順のまとめ
ここまでの手順を箇条書き
以上、Android Studioでのパッケージ名変更でした。
こういった手順を踏んでいけば確実です。