EclipseでAndroidプロジェクトのパッケージ名を変更するにはどうすればよいですか?


132

Eclipseで作成したAndroidプロジェクトがあります。プロジェクトのパッケージ名とアプリケーションを変更したい。Eclipseでそれを行うにはどうすればよいですか?


3
@vamsuの答えは正解であり、フラグを立てたものではありません。変更してください。
OMGPOP

回答:


129

通常どおり、F2パッケージ名を押すと、パッケージ名を変更または変更できます。また、右クリックしてRenameオプションを選択すると、パッケージ名を変更または変更できます。

を押すとF2、次のようなダイアログボックスが表示されます。

代替テキスト

このダイアログでは、「参照の更新」チェックボックスを必ずオンにしてください。このチェックボックスを「オン」にすると、プロジェクトの他のコンポーネントが参照するパッケージのすべての参照が変更されます。


5
右クリック> [名前を変更]はEclipse Heliosのオプションではないようですが、F2パッケージ名は機能します。
t0s

2
XMLファイルは手動で更新する必要があるため、忘れないでください。
Alaa Eldin 2012

2
u検索するためにXML manulay..goを更新する必要はありません>ファイル> com.yourpackage> replace>新しいパッケージ名
sheetal

コンテキストメニューのルートにない場合は、Rename下のコマンドを探しRefactorます。
A-Live

6
ねえ、これは実際にはAndroidプロジェクトなので、このようにコンパイルされません!@vamsuが言うように、パッケージの名前を変更するにはAndroidツールを使用する必要があります。
SolessChong 2013年

141

これはEclipse Androidツールのバグです。

修正するには:プロジェクトを右クリックして、Androidツール->アプリケーションパッケージの名前を変更します。

また、AndroidManifest.xml正しく更新されているかどうかも確認してください。私の場合、それはしませんでした、そしてそれはこの問題を解決するはずです。


11
これは私にとって次のように機能しました。genフォルダーとAndroidManifest.xml内のすべてのファイルを変更しました。次に、変更されていないパッケージ(srcフォルダー内)に戻りました。右クリック->リファクタリング->名前の変更をやり直しました。新しい名前とビンゴを入力しました。完了
オースティン

ありがとう!この方法でOKです。承認するとアプリがクラッシュします
LE SANG

11

これらはどれも私にとってはうまくいきませんでした、それらはすべてエラーを引き起こしました。

以下は私のために働きました:

  • プロジェクトを右クリックして、[Android Tools] >> [Rename Application Package]を選択します。
  • 新しいパッケージ名を入力してください
  • 加えたいすべての自動変更を受け入れる
  • 起動設定を更新するには「はい」と言ってください

wwwww!それは完璧なものです。
Favas Kv 2015

9

1つの非常に重要な通知:

NEVERパッケージ名を含む文字列値を渡すのと同じような何かのように直接パッケージ名を使用していません。メソッドgetPackageName()を使用します。これにより、名前の変更が動的になります。メソッドgetPackageName()に到達するために何でもします。

Eclipse Junoでは、名前を変更する正しい方法は次のとおりです。

  1. マニフェストに移動して編集します。
  2. マニフェスト内のすべての古いパッケージ名を削除します。
  3. 古いパッケージ名の代わりに、新しいパッケージ名をマニフェスト内のすべての場所に配置します。直接のパッケージ名参照を必要とするクラス(あるアクティビティ)があるかもしれません。
  4. マニフェストを保存します。
  5. 次に、プロジェクト内のパッケージ名を右クリックします。
  6. 「リファクタリング」を選択します。
  7. 「名前を変更」を選択します。
  8. 新しいパッケージ名を入力します。
  9. 「参照の更新」を選択します。
  10. OKを押すと完了です。新しい名前を置き換えるために何をすべきかにも注意してください。
  11. 新しいパッケージ名でレイアウトXMLファイルも更新することを忘れないでください。カスタムビューがある場合があります。それらを探してください。

7
 Right click on your project name and select Android Tools , then click 
 Rename Application Package, then change your project name click OK and 
 click Finish.

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

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

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


4

Androidでアプリ名を変更するには、に移動しres/values/strings.xmlて必要app_nameなものに変更します。


7
パッケージ名がアプリケーション名と異なります!
チャン

4

プロジェクト名を右クリックしてAndroidツールを選択し、[ アプリケーションパッケージ名の変更]をクリックして名前を変更します。Androidプロジェクト専用です。


2

を押しF2て名前を変更します(またはプロジェクトを右クリックしてを選択しますRename)。プロジェクトでそのパッケージが宣言されている場所はどこでも変更されます。自動的に名前が変更されます。


2

後藤のSrcあなたのAndroidプロジェクトのフォルダ、およびJavaファイルを開きます。

パッケージOldName.android.widgetをに変更しますnewName.android.widget

それはあなたにこのようなエラーを与えます

宣言されたパッケージ「newName.android.widget」は、予期されるパッケージ「OLDName.android.widget」と一致しません。

この問題を修正するには、「filename.JavaをNewname.android.widgetに移動」を選択し、古いパッケージフォルダーを削除します。

次のステップ:に移動しAndroidManifest.xmlてに変更 package="OldName.android.widget"package="newName.android.widget"ます。


2

これは私にとって完璧に機能しました(単純なテキスト置換):

検索に移動->ファイル

テキストを含む:古いパッケージ名

ファイル名パターン:*

スコープ:ワークスペース

置換を押す

置換:新しいパッケージ名

これで、プロジェクトはエラーでいっぱいになります。

プロジェクトエクスプローラーでパッケージをクリックし、F2(名前の変更)を押します。

新しいパッケージ名を入力し、すべてのチェックマークをオンにします。

プレビューを押します。

OKをクリックします。

Eclipseが更新されるのを待ちます。それでもエラーがある場合は、ワークスペース内のすべてのプロジェクトをクリーンアップします。

プロジェクト -> クリーン


2

この投稿で言及されている2つの回答を組み合わせるまでは、どれもうまくいきませんでした。

手順1:プロジェクトを右クリックし、[Androidツールを選択]-> [アプリケーションパッケージの名前を変更]をクリックします。(これにより、genフォルダーとAndroidManifest内のすべてのファイルが変更されますが、srcフォルダー内のパッケージ名は変更されないため、ステップ2に従いました)

ステップ2:srcフォルダー内パッケージ名を右クリック->リファクタリング->名前の変更->ステップ1で入力した新しい名前を入力します。

古いパッケージ名が残っているかどうかAndroidManifestを確認し、新しいパッケージ名(私の場合は「uses-permission」タグ内)に置き換えます。

次に、Eclipseを閉じて再度開きます。デバイスからアプリをアンインストールして再度インストールすると、すべてが正常に動作するはずです。

これがあなたの時間を助け、節約することを願っています。


1

OKこれが私がしなければならなかったことです:

問題:ベースプロジェクトと同じワークスペースにある他のいくつかのプロジェクトの開始点として使用したいベースプロジェクトがありました。ベースプロジェクトは、自分のローカルリポジトリで既にGiTの制御下にありました。ベースプロジェクト「MyBaseApp」を複製して「MyKillerApp」の開始点にするときがきました。

解決:

  1. MyBaseAppディレクトリ全体をMyKillerAppとして複製し、2つのディレクトリを並べました。
  2. ファイルMyKillerApp->。projectを編集して、名前をMyBaseAppからMyKillerAppに変更しました。(これはステップ3が機能するために必要でした。)
  3. 私はEclipseを開いて、File-> Import of MyKillerAppを実行しました([インポート]メニューの使用方法の詳細は省略しましたが、周りをクリックするとわかります)。
  4. パッケージマネージャーでMyKillerAppを右クリックし、[Androidツール]-> [アプリケーションパッケージの名前をMyKillerAppに変更]を選択しました。Java以外のファイルに関する最後のチェックボックスを除いて、名前を変更するためのすべてのオプションをチェックしました。
  5. パッケージマネージャーでsrc-> com.myname.MyBaseAppを強調表示し、MyKillerAppにF2キーを押しました。次に、AndroidManifest.xmlファイルに追加する開始アクティビティクラスを含むいくつかのクラスに対して同じことを行いました。
  6. いくつかの関数呼び出し名を更新する必要がありましたが、コンパイラーがそれらを簡単に指摘してくれました。

したがって、私はベースプロジェクトから派生した新しいプロジェクトを持っていて、ベースプロジェクトから残った用語はなく、それは独自のローカルGiTリポジトリにありました。


1

以下は日食で私のために働きました:

AndroidManifestに移動し、古いパッケージ名を検索して新しい名前に置き換え、保存時にすべてを更新します。ルートプロジェクトパッケージに移動してF2キーを押し、新しい名前を入力して、[参照の更新]および[サブパッケージの名前を変更する]チェックボックスをオンにします。この後、レイアウトxml内のカスタムビューの終了タグが変更されなかったため、すべてのJavaファイルに対するRインポートについて不満が出ているため、プロジェクトはすべて赤でした。これらを手動で変更した後、すべてが正常に戻りました。それだ。


0

アプリケーションの名前変更-完全ガイド

**A) for changing Just the application name
   (App name which is displayed below icon)
    in the Manifest.xml file, in <application tag, 
    android:label="YourAppName"
    then do the same in All the <activity Tags        

  B) For changing EVERYTHING 
   (folder names, Package names, Refrences,app name, etc.)
  *1) Renaming package names in gen folder and manifest.xml
      Right Click on Your project
      Android tools- Rename Application Package

  *2) Renaming package names in src folder 
      Expand src folder, Click on package (Single click) 
      Press Alt+Shift+R
      Check Update references and Rename subpackages      
   3) Renaming the app's main Folder (Optional)
      click on the application's folder (Single click)
      then Press Alt+Shift+R 

   4) Renaming application name- Refer "A)"**

0

Far Managerを入手して、古い名前を検索してください。次に、手動で(Far Managerで)すべての場所を交換します。悲しいことに、これは可能なケースの100%で機能する唯一の方法です。


0

私もこれで大きな問題がありました。

リファクタリングによってプロジェクトとパッケージの名前を変更しましたが、アプリが役に立たなくなりました。名前を元に戻し、Androidツールを使用してパッケージの名前を変更しましたが、これは機能しましたが、パッケージフォルダーとクラスの名前は古いものでした。

次に、パッケージフォルダーをリファクタリングしました。これで、アプリは実行されません。私のマニフェストはめちゃくちゃでした。たとえば、私のランチャー名が2倍になりましたcom.ronguilmet.app/com.ronguilmet.com.class。私はそれを修正し、すべてのアクティビティを手動で編集する必要がありました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.