会社のドメインを含むパッケージ名を完全に変更する


82

これがパッケージ名であると仮定しましょう: package com.company.name。どうすれば変更できcompanyますか?

PS変更方法はわかりましたがname、わかりませんでしたcompany。AndroidStudioを使用しています。


私はプロジェクトを作り始めました、そしてcompanyこのプロジェクトは会社のためであるため、私は別の言葉に変える必要があります。そして、なぜ削除キーを使用するのですか?どこ?
フィリップルチアネンコ2013


新しいパッケージを作成し、移動するクラスを選択して、新しく作成したパッケージにドラッグアンドドロップし、リファクタリングするだけです。これは私にとっては
うまくいき

回答:



50

現在のパッケージ:com.company.name

新しいパッケージ:com.mycomapny.name

手順:1)以下に示すこの画面が表示されているとします。

ここに画像の説明を入力してください

2)プロジェクトペインを開き、設定アイコンをクリックします。

3)コンパクトな空のミドルパッケージの選択を解除します。

4)次に、パッケージは以下に示すように個々のパーツに分割されます。

5)「会社」を右クリックしてリファクタリングを選択->名前の変更を選択->ディレクトリの名前を変更。

ここに画像の説明を入力してください

6)これで、「会社」が新しい「mycomapny」に変更され、下の図に示すように変更が反映されました。

ここに画像の説明を入力してください

7)AndroidManifest.xmlファイルのパッケージ名を変更します。

ここに画像の説明を入力してください

8)アプリレベルのbuild.gradleを開き、パッケージ名を変更します。

ここに画像の説明を入力してください

9)シンボル「R」を解決できないためエラーが発生します。

10)このエラーが発生する行を削除すると、スタジオは新しいRファイルを自動的にインポートします。

11)複数のファイルがある場合は、「Cntrl + Shift + R」を押して検索と置換オプションを使用します

または、「[編集]-> [検索]-> [パス内で置換]を選択します。」

ここに画像の説明を入力してください

12)[すべて置換]を選択します。


31

これは私のために働いた、https://stackoverflow.com/a/18637004/127434から

もう1つの良い方法は、次のとおりです。まず、javaフォルダー->新規->パッケージを右クリックして、目的の名前で新しいパッケージを作成します。

次に、すべてのクラスを選択して新しいパッケージにドラッグします。AndroidStudioは、あらゆる場所でパッケージ名をリファクタリングします。

最後に、古いパッケージを削除します。


これは部分的には機能しましたが、「importcom.company.foo」ステートメントは修正されませんでした。src /ディレクトリのグローバル置換で後者を行うことができました。
LarsH 2016

9

Android Studioでは、次のように実行できます。

たとえば、com.example.appをiu.awesome.gameに変更する場合は、次のようにします。

  1. プロジェクトペインで、小さな歯車のアイコンをクリックします( ここに画像の説明を入力してください)を
  2. Compact Empty MiddlePackagesオプションのチェックを外す/選択を解除する ここに画像の説明を入力してください
  3. これで、パッケージディレクトリが個々のディレクトリに分割されます
  4. 名前を変更する各ディレクトリを個別に選択し、次の手順を実行します。

    • 右クリック
    • リファクタリングを選択

    • [名前の変更]をクリックします

    • ポップアップダイアログで、[ディレクトリ名の変更]ではなく[パッケージの名前変更]をクリックします

    • 新しい名前を入力し、リファクタリングを押します

    • 下部にある[リファクタリングを行う]をクリックします

    • AndroidStudioにすべての変更を更新させるために1分待ちます

    • 注:Android Studioでcomの名前を変更すると、警告が表示される場合があります。このような場合は、[すべて名前を変更]を選択しますここに画像の説明を入力してください

      1. 次に、Gradleビルドファイル(build.gradle-通常はアプリまたはモバイル)を開きます。defaultConfigのapplicationIdがまだ自動的に更新されていない場合は、新しいパッケージ名と同期Gradleに更新します。ここに画像の説明を入力してください

      2. マニフェストのpackage =属性を変更する必要がある場合があります。

      3. クリーンアップして再構築します。

      4. 完了!とにかく、AndroidStudioはこのプロセスを少し簡単にする必要があります。


8

@Luch Filipのソリューションは、アプリパッケージの名前を変更したいだけの場合にうまく機能します。私の場合、混乱しないように、ソースパッケージの名前も変更したいと思います。

必要な手順は2つだけです。

  1. ソースフォルダをクリックします。例:com.company.example> Shift + F6(リファクタリング->名前の変更...)> パッケージの名前の変更>希望の名前を入力します。

  2. AndroidManifest.xmlに移動し、パッケージ名をクリック> Shift + F6(リファクタリング->名前の変更...)>上記と同じ名前を入力します。

手順1では、R.javaフォルダーの名前が自動的に変更され、すぐにビルドできます。


メインソースフォルダの「IOException:名前を変更できません(...)」が表示されることを除いて、すべて問題ありません。オープンしたばかりのシンプルなプロジェクト。
kaay 2015

1
Android Studio2.1.1を使用しています。私の特定の例えば、最初に、私は持っていますinfo.apachehive.cardview、私は持っていたいですnet.vyhn.cardview手順1.ツリービューのソースコードを選択します。ステップ2.をクリックしapachehive、Shift + F6 Refactor \ Renametoを押しますvyhnステップ3.infoフォルダーをクリックし、Shift + F6 Refactor \ Renametoを押しますnet。ファイルはAndroidManifest.xml自動的に変更されます。次に、デバッグを実行します。アプリケーションは正常に機能します。
Do Nhu Vy 2016年

5

以下に4つのステップを示します。

  1. 以下のアプリフォルダをクリックしてください。

ここに画像の説明を入力してください

com.new25.impro。Shift + F6 {リファクタリング->名前の変更...}を押してパッケージの名前を変更し、を押しrefactorます。

  1. その後、Androidモニターをご覧ください。そのパッケージ名はどこでも変化を示しています。をクリックしrefactorます。

  2. app:changeその名前がそれを置くようにあなたのためのアプリケーションIDをモジュールに移動します。をクリックしますsync now

  3. これで、パッケージ名を好きな名前に変更できます。


2

1)AndroidStudioでプロジェクトフォルダーを開きます。
2)アプリフォルダーを選択->右クリックし、リファクタリングを選択します。
3)移動をクリックします。完全なパッケージ名を所有しているパッケージ名の種類を尋ねられ、新しいパッケージを作成するように求められます。はい、自動的に新しいパッケージを作成gradlesyncます。


いくつかのスクリーンショットを追加できるかもしれません。
Asim KT

2

Android Studioでパッケージ名の名前を変更するには、プロジェクトセクションの設定アイコンをクリックし、コンパクトな空のミドルパッケージのチェックを外します。その後、パッケージは複数のフォルダー名に分割され、名前を変更する必要のあるフォルダーを右クリックします。 [リファクタリング]-> [名前の変更]->変更する名前を入力-> [リファクタリング]-> [ディレクトリのリファクタリング]をクリックし、プロジェクト全体にR.javaファイルをインポートします。私のために働いています。


2

私はほとんどすべての答えを読みました。しかし、私は1つが欠けていると思います。時々私は間違っているかもしれません。私は以下の方法を使用しました、そしてそれは働いています。

AndroidStudioでパッケージ名を変更する3つの方法

  1. パッケージ選択し右クリックしリファクタリング->移動
  2. 「パッケージを「パッケージ」から別のパッケージに移動」を選択し、 OK をクリックします。
  3. 新しいダイアログが表示され、複数のディレクトリがパッケージ「yourpackage」に対応していることを示して「Yes」をクリックします。
  4. 最後のレベルまたは姓を除いて、新しいパッケージ名を入力します。パッケージ名の名前を「info.xyz.yourapplication」に変更する場合。次に、「info.xyz」と入力し、「yourapplication」のみを残します。
  5. [リファクタリング]をクリックしますます。
  6. 新しいダイアログ、パッケージinfo.xyzは存在しません。作成しますか?[はい]をクリックしますます。
  7. [リファクタリングを行う]をクリックしますます。
  8. 新しいパッケージを右クリックして、姓を変更します。リファクタリング->名前の変更
  9. パッケージの名前を変更する
  10. 新しい名前を入力し、[リファクタリングを実行]をクリックます。
  11. 古いパッケージディレクトリをすべて削除します。
  12. build.gradleファイルのApplicationIdを変更し、今すぐ同期をクリックします

1
私にとって、これが最良の答えです。ありがとう。
HasanEl-Hefnawy19年

1

あなたの会社のドメイン/パッケージ名が非常に長い場合、それはよりトリッキーです。

これは私にとって欠けていたリンクでした。[プロジェクトファイル]-> [設定]-> [コンパクトな空のミドルクラス]のチェックを外す必要があります。


0

これを行う最も簡単な方法は、からのルートappフォルダの名前を変更するだろうcom.example.MyAppcom.newcompanyname.MyNewAppNameし、その後、使用しているものは何でもIDEで新しいパスに古いパスのすべての出現を置き換えます。


0

プロジェクト全体でパッケージの名前を変更するための別の解決策を見つけました。

パッケージ内のファイルを開きます。IntelliJは、開いているファイルの上に、ファイルのブレッドクラムを表示します。名前を変更するパッケージで、右クリック>リファクタリング>名前の変更。これにより、プロジェクト全体でパッケージ/ディレクトリの名前が変更されます。


0

私も同じ問題に直面しました&これが私が解決した方法です:-

パッケージ名np.com.shivakrstha.userlognp.edu.khec.userlogに変更したい

shivakrsthaを選択し、Shift + F6押してRefractの名前を変更し、名前をkhecに変更しました

最後に、AndroidManifest.xmlで同じパッケージ名を使用し、build.gradleでapplicationIdを使用し、プロジェクト再構築することを忘れないでください。

注: -私は、変更しようとしたNPJP私が選択したので、NPを、私が押されたShiftキー+ F6のための名前の変更レフをし、名前に変更JPあまりにも変更他の人に、それの[OK]をクリックします。


0

これはあなたを助けるかもしれません-1)あなたのパッケージのファイルを開きます。2)Android Studioは、開いているファイルの上にファイルのブレッドクラムを表示します。名前を変更するパッケージで、右クリック>リファクタリング>名前の変更。

ここに画像の説明を入力してください


0

パッケージ名は変更していません。次の2つのステップは私のために働いた。以下を行った後、同じパッケージ名のアプリケーションが2つありましたが、アプリケーションは新しいものとしてインストールされました。

1)build.gradle内

applicationId "mynew.mynewpackage.com"

2)AndroidManifest.xmlでandroid:authorities = "mynew.mynewpackage.com.fileprovider"


-2

こんにちは私はこれを行う最も簡単な方法を見つけました。

  1. 目的のパッケージ名で新しいプロジェクトを作成します
  2. 古いプロジェクトから新しいプロジェクトにすべてのファイルをコピーします(old.bad.oldpackage => new.fine.newpackage、res => resのすべてのファイル)
  3. 古いbuild.graddleを新しいbuild.graddle内にコピーします
  4. 古いマニフェストを新しいマニフェスト内にコピーする
  5. 古いプロジェクトをバックアップまたは単に削除する

完了!


それは最も信頼できる方法ではありません。単にリファクタリングが仕事をします。誰かがスタイル、寸法、ドローアブル、ライブラリを備えたより複雑なプロジェクトを持っていると想像してください。この方法には時間がかかります。
アミールドラ。

1
私の方法に一歩ずつ従えば信頼でき、従えば非常にスピーディーです。複雑さを忘れて、既存のソースから新しいプロジェクトを作成していると考えてください。描画可能なディメンションライブラリがどこにあるかわからないことがわかるので、説明します。その後、私の答えに賛成する必要があります。1-ライブラリはbuild.graddleに含まれているため、ファイルをバックアップした場合は、新しいbuild.graddle内のコンテンツをコピーする必要があります。2-ドローアブル、ディメンション、スタイルはすべてresフォルダー内にあります。したがって、両方のプロジェクトを新しい/古い(パッケージ)で開いている場合は、ドラッグアンドドロップするだけです
Martin Jovial 2018

時々、リファクタリングは想像以上に複雑になります。成功せずに試した後、私の方法を使用すると、すべてが魅力のように機能しました
Martin Jovial 2018

はいマーティン、これも一方向であり、機能することに同意します。しかし、それは最速の方法ではありません。詳細な回答をありがとう。
アミールドラ。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.