Đổi tên gói trong Android Studio


1361

Làm cách nào để đổi tên các gói trong IDE Android Studio mới, dựa trên IntelliJ IDEA?

Có một tái cấu trúc tự động bao gồm?

Tôi muốn thực hiện tái cấu trúc hàng loạt, nhưng tôi không biết làm thế nào. Tôi đã làm việc hai năm với Eclipse và trong Eclipse đó là thao tác một lần bấm.


Xin vui lòng xem câu trả lời của tôi ở đây . Tôi đã quản lý thành công để đổi tên dự án của mình bằng các bước tôi đã mô tả.
Leigh


Từng bước Quy trình thay đổi tên gói ... stackoverflow.com/a/46945668/6915572
Shubham Soni

Câu trả lời của Sheharyar hoạt động như mong đợi. tức là 1. Refactor 2. Chỉnh sửa build.gradle. Tuy nhiên, bạn cũng sẽ phải theo dõi nó bằng cách thay đổi thuộc tính app_name trong tệp String.xml!
Suhas Mallya

Câu trả lời:


2848

Trong Android Studio, bạn có thể làm điều này:

Ví dụ: nếu bạn muốn thay đổi com.example.appthành my.awesome.game, thì:

  1. Trong ngăn Dự án của bạn , nhấp vào biểu tượng bánh răng nhỏ ( Biểu tượng bánh răng)

  2. Bỏ chọn / Bỏ chọn Compact Empty Middle Packagestùy chọn

    Gói giữa nhỏ gọn

  3. Thư mục gói của bạn bây giờ sẽ được chia trong các thư mục cá nhân

  4. Chọn riêng từng thư mục bạn muốn đổi tên và:

    • Nhấp chuột phải vào nó
    • Lựa chọn Refactor
    • Bấm vào Rename
    • Trong hộp thoại bật lên, nhấp vào Rename Packagethay vì Đổi tên thư mục
    • Nhập tên mới và nhấn Refactor
    • Nhấp vào Do Refactor ở phía dưới
    • Cho phép một phút để Android Studio cập nhật tất cả các thay đổi
    • Lưu ý: Khi đổi tên comtrong Android Studio, nó có thể đưa ra cảnh báo. Trong trường hợp đó, chọn Đổi tên Tất cả

    Nhập mô tả hình ảnh ở đây

  5. Bây giờ hãy mở Gradle Build File của bạn ( build.gradle- Thông thường apphoặc mobile). Cập nhật phần applicationIdtrong defaultConfigTên gói và Đồng bộ hóa gói mới của bạn, nếu nó chưa được cập nhật tự động:

    Thư mục tái cấu trúc

  6. Bạn có thể cần phải thay đổi package=thuộc tính trong tệp kê khai của bạn.

  7. Làm sạch và xây dựng lại.

  8. Làm xong! Dù sao, Android Studio cần làm cho quá trình này đơn giản hơn một chút.


32
Làm sạch và xây dựng lại.
Sheharyar

20
CẢNH BÁO: nếu bạn chọn "Đổi tên tất cả" khi đổi tên thành "com", nó sẽ đổi tên không chỉ các thứ trong mô-đun đã chọn mà thành tất cả các mô-đun vào dự án này
ricky.tribbia

17
@Antonio kéo các tập tin trong com.example.testđể com.examplevà sau đó xóa com.example.test.
Dick Lucas

27
Thủ tục này làm việc cho tôi. Tôi cũng đã phải thay đổi AndroidManifest.xml để phản ánh tên mới. Ví dụ:> gói = "my.awclaw.game">
nevzo

11
Nếu bạn đang sử dụng firebase, hãy thay đổi gói_name của bạn trong google-services.json.
Samar

550

Một phương pháp tốt khác là: Đầu tiên tạo một gói mới với tên mong muốn bằng cách nhấp chuột phải vào thư mục Java → MớiGói .

Sau đó, chọn và kéo tất cả các lớp của bạn vào gói mới. Android Studio sẽ cấu trúc lại tên gói ở mọi nơi.

Cuối cùng, xóa gói cũ.

Làm xong.

Rất quan trọng:

Bạn phải thay đổi thủ công tệp AndroidManifest.xml và tệp build.gradle sang gói mới nếu bạn sử dụng phương pháp này.


67
Bạn có thể cần cập nhật tệp Bản kê khai Android để tham khảo gói mới nếu bạn sử dụng phương pháp này. Bước rất đơn giản, giải pháp tuyệt vời.
Dick Lucas

10
Bạn có thể phải khởi động lại studio Android để cập nhật .idea / workspace.xml
Christoph

24
Bạn cũng có thể cần thay đổi bản dựng của mình. Nâng cấp để phản ánh gói mới
Samik Bandyopadhyay

35
Phương pháp tốt nhưng phải thực hiện thêm 2 việc (ngoài cập nhật tệp kê khai) để làm cho nó hoàn toàn hoạt động, trước tiên phải thay đổi / đổi tên nhập tệp R trong toàn bộ dự án và thứ hai là appdebug sử dụng tên gói cũ (hiển thị trong cửa sổ chạy của studio ) đã thêm ứng dụng "com.packagename" trong ứng dụng build.gradle defaultconfig ..
baboo

1
@baboo Để làm cho phần đầu tiên đó dễ dàng hơn, bạn có thể tối ưu hóa nhập tệp cho toàn bộ dự án bằng cách nhấn Ctrl + Alt + O và chọn tất cả các tệp, sau đó nhấp vào chạy. Điều này đặc biệt hữu ích nếu bạn có nhiều hoạt động và các lớp khác với nhập tệp R.
Samuel Rabinowitz

202

Thay đổi ID ứng dụng (hiện không phụ thuộc vào tên gói) có thể được thực hiện rất dễ dàng trong một bước. Bạn không cần phải chạm vào AndroidManifest. Thay vào đó hãy làm như sau:

  1. nhấp chuột phải vào thư mục gốc của dự án của bạn.
  2. Nhấp vào "Mở cài đặt mô-đun".
  3. Chuyển đến tab Hương vị.
  4. Thay đổi applicationID thành bất kỳ tên gói nào bạn muốn. Nhấn OK.

Lưu ý điều này sẽ không thay đổi tên gói. Việc tách tên gói và ID ứng dụng được giải thích tại đây: http://tools.android.com/tech-docs/new-build-system/applicationid-vs-packagename


8
Điều này chỉ thay đổi tên trong lớp, và không nơi nào khác.
Jacob R

4
Đây là một câu trả lời chén thánh! Rất thông minh!
sud007

4
Điều này cần phải được chọn là một câu trả lời chính xác vì nó là cách rất đơn giản và nhanh chóng để làm theo.
Ayaz Alifov

6
Nhu cầu này được chấp nhận, câu trả lời khác được dài và bạn không thể thay đổi com.example.sampleđể com.examplesử dụng câu trả lời khác
Inder Kumar Rathore

1
Đây là câu trả lời chính xác. Làm việc như quyến rũ với thời gian tối thiểu
sunil

77

Cách tiếp cận được tôi sử dụng để đổi tên tên gói rất đơn giản như sau: -

Bước 1 : Chọn tùy chọn Project từ menu bên trái của Android Studio

nhập mô tả hình ảnh ở đây

Bước 2 : Nhấp chuột phải vào java và thêm gói mới và đặt tên gói mong muốn

nhập mô tả hình ảnh ở đây

Bước 3 : Nhập bạn packagename mới

nhập mô tả hình ảnh ở đây

Bước 4 : Sao chép tất cả các tệp từ gói cũ của bạn và dán vào gói mới

nhập mô tả hình ảnh ở đây

Bước 5 : Đổi tên tên gói trong tệp kê khai

nhập mô tả hình ảnh ở đây

Bước 6 : Đổi tên tên gói trong tệp build.gradle

nhập mô tả hình ảnh ở đây

Bước 7 : Sau đó nhấp chuột phải vào gói cũ và xóa nó với tất cả dữ liệu của nó và cũng xóa thư mục đó

nhập mô tả hình ảnh ở đây

Bước 8 : Sau đó, xây dựng lại dự án của bạn

nhập mô tả hình ảnh ở đây

Bước 9 : Sau đó, bạn sẽ tìm thấy một số lỗi của gói nhập khẩu cũ trong dự án của bạn Chọn tên gói cũ trong bất kỳ tệp nào và nhấn CTRL + Shift + R , và nhập tên gói mới vào hộp thay thế, sau đó nhấn find

nhập mô tả hình ảnh ở đây

Bước 10 : Sau đó, một cửa sổ bật lên xuất hiện như bên dưới và chọn tùy chọn Tất cả các tệp từ nó

nhập mô tả hình ảnh ở đây

Bước 11 : Xây dựng lại dự án của bạn một lần nữa, bingo gói dự án của bạn đã được thay đổi :)


1
Thay thế trong đường dẫn không còn khả dụng tru Shift + R trong Android studio 2.3.3, tô sáng đường dẫn cũ, đi tới Chỉnh sửa -> Tìm -> Thay thế trong đường dẫn. Cũng đảm bảo cập nhật các tập tin gradle của bạn. Chúc mừng
ralphgabb

Không nhận được bất kỳ lỗi với tên gói cũ. Vì vậy, không phải làm gì sau bước 9. Cảm ơn!
dùng3760100

Nếu bạn không gặp phải bất kỳ lỗi nào, thì đừng đi sau bước 9
Mehroz Munir

1
Lỗi: Thực thi không thành công cho nhiệm vụ ': app: compileDebugAidl'. > java.io.IOException: com.android.ide.common
Process.ProcessException

Thay vì Sao chép, tôi chỉ Di chuyển và bằng cách sử dụng thao tác này thay vào đó, tôi đã không có bất kỳ lỗi nào sau khi xây dựng lại.
Cavaleiro

48
  1. Xem tệp AndroidManifest.xml của bạn.
  2. Đặt con trỏ của bạn trong tên gói như dưới đây. Đừng chọn nó, chỉ cần đặt nó.

    Nhập mô tả hình ảnh ở đây

  3. Sau đó nhấn Shift+ F6bạn sẽ nhận được một cửa sổ bật lên như hình bên dưới, chọn Đổi tên gói .

    Nhập mô tả hình ảnh ở đây

  4. Nhập tên mới của bạn và chọn Refactor . (Lưu ý vì con trỏ của tôi đang ở "cái gì đó", chỉ một cái gì đó được đổi tên.)

Thế là xong.


1
Cảm ơn đã làm việc trên Android Studio 1.5.1 Nó tự động thay đổi gói Không cần tạo gói mới và kéo và thả tệp và xóa gói cũ Blah Blah Blah
Shan Xeeshi 7/03/2016

@Prince Jayakumar, câu nói 'không chọn nó chỉ đặt nó' là khó hiểu. chỉ bằng cách đặt con trỏ chuột, shft + f6 sẽ không hoạt động. Nếu dấu mũ ở một nơi nào khác trong tệp thì bạn nhấp vào tên gói, thì shft + f6 sẽ hoạt động
Mitchs

Cách dễ nhất để thay đổi tên gói!
Timo Schuck


Hoàn thành đổi tên gói và id ứng dụng trong vài bước ít nhất có thể! Cảm ơn.
user1608385

43

Nhấp chuột phải vào gói tại Bảng điều khiển dự án .

Chọn Refactor -> Đổi tên từ menu ngữ cảnh.


1
điều này làm việc rất tốt cho tôi, cũng phải cập nhật tệp AndroidManifest.
Physphil

115
Refactor> Đổi tên chỉ cho phép tôi đổi tên phần cuối của gói, ví dụ: ứng dụng trong com.example.mypackage.app
GilliMonsta

1
Tôi đã làm theo cách này nhưng bây giờ nó nói lớp không tồn tại vào thời điểm ra mắt. Làm thế nào bạn đổi tên nó?
Dharmik

Tôi đã sử dụng menu chính "Refactor" và nhấp vào "Đổi tên".
Codebeat

@GilliMonsta bạn có thể chọn thư mục ứng dụng của mình trong cài đặt nhấp vào bảng điều khiển bên phải và bỏ chọn Gói trung gian trống nhỏ gọn
Taranmeet Singh

25
  1. Mở tập tin:

    ứng dụng → bảng kê khai → AndroidManifest.xml

    Nhập mô tả hình ảnh ở đây

    Đánh dấu từng phần trong tên gói mà bạn muốn sửa đổi (không tô sáng toàn bộ tên gói) sau đó:

    • Nhấp chuột phải → Refactor → Đổi tên → Đổi tên gói
    • gõ tên mới và nhấn (Refactor)

    Thực hiện các bước này trong mỗi phần của tên gói.

    Nhập mô tả hình ảnh ở đây

  2. Mở (Tập lệnh Gradle) >> (build.gradle (Modul: app))

    và cập nhật ứng dụng vào tên gói của bạn

    Nhập mô tả hình ảnh ở đây

  3. Mở menu (bản dựng) và chọn (Dự án xây dựng lại).


Tôi đã thử làm điều này và tôi đã gặp một trở ngại. Tôi đang cố gắng thay đổi com.example.android.package thành tên miền của riêng tôi (kết thúc .net). Tôi có thể thay đổi 'ví dụ' và 'gói', nhưng tôi không thể thay đổi 'com'. Nó cũng không đổi tên bất kỳ thư mục. Bất cứ lời khuyên?
Rob Rose

@RobertRose, tôi có một giải pháp cho vấn đề của bạn. Bạn vẫn đang làm việc trên nó?
Android gốc

Tôi đặt nó sang một bên và chỉ đi về phía trước và để lại nó. Đó không phải là sản xuất. Để tham khảo trong tương lai, bạn đã nghĩ ra cái gì?
Rob Rose

Cái thứ nhất không hoạt động nếu tôi có loại gói "xxx.mydomain.com")
Jemshit Iskenderov

xinh đẹp. các bước thứ hai là rất cần thiết và thường được xem qua trong hầu hết các câu trả lời.
AlleyOOP

16

IntelliJ IDEA có một tùy chọn gọi là "Gói rỗng giữa nhỏ gọn". Chọn biểu tượng tùy chọn của tab Project và hủy / kích hoạt cái này.

Xem: Làm cách nào tôi có thể thay đổi tên gói cấp cao nhất trong IntelliJ IDEA?


1
Điều này rất hữu ích. Sau khi 'hủy kích hoạt', tính năng này mọi thứ rõ ràng hơn và tôi có thể xóa các gói trống
Chris Nevill

@ChrisNevill và làm thế nào bạn xóa những gói trống đó?
beretis

Tôi nghĩ rằng tôi chỉ cần chọn chúng và nhấn xóa. Tôi không thể tái tạo vấn đề tại thời điểm này để không thể nhớ chính xác.
Chris Nevill

Tôi đồng ý, điều này thực sự hữu ích. Nên được bao gồm trong tất cả các câu trả lời dưới tiêu chuẩn mà tôi đã thấy liên quan đến chủ đề này.
iaindownie

16

Chọn gói sẽ được tái cấu trúc. RefactorDi chuyển"Di chuyển xxx sang gói mới" .


Đây là phương pháp dễ dàng
droid kid

4
Không hoạt động, đã thay đổi gói của tôi từ "com.company.oldname" thành "com.company.newname.oldname". Xem? Phương pháp này không cho phép thay đổi thành phần cuối cùng của tên (và tôi đã thử nhiều lần).
Jose Manuel Abarca Rodríguez

13

Tôi đã thấy các câu trả lời được bình chọn hàng đầu nhưng tôi thấy có một chút khác biệt để làm điều này, tôi cố gắng làm hướng dẫn đầy đủ nhất.

Từ Android Studio, nhấp vào biểu tượng bánh răng ( Biểu tượng bánh răng) và sau đó chọn tùy chọn : "Compact Empty Middle Packages", để xem các thư mục được phân tách trong chế độ xem dạng cây.

giới thiệu la descripción de la fanten aquí

Bây giờ chọn thư mục, nhấp vào nút bên phải để mở menu ngữ cảnh, chọn Refactorvà sau đóRename

giới thiệu la descripción de la fanten aquí

Bạn sẽ được khuyên nên cấu trúc lại gói:

giới thiệu la descripción de la fanten aquí

Sau đó, một cửa sổ sẽ hiển thị các sự trùng hợp bên trong proyect, chọn "Do Refactor":

giới thiệu la descripción de la fanten aquí

Chúng tôi không thể thay đổi thủ công các tệp AndroidManifest.xml hoặc build.gradle, Tái cấu trúc gói sẽ thực hiện công việc!.


8

Nếu tên gói của bạn cách nhau nhiều hơn hai dấu chấm, thì com.hello.worldhơn thế nữa, bạn đã không đặt bất cứ thứ gì vào com/com/hello/. Tất cả các lớp của bạn đang được đưa vào com/hello/world/, bạn có thể thực hiện các bước sau để cấu trúc lại tên gói của mình trong Android Studio hoặc IntelliJ:

  • [FIRST] Thêm một cái gì đó trong thư mục của bạn ( com/, com/hello/). Bạn có thể đạt được điều này bằng cách trước tiên thêm hai tệp vào gói com.hello.wworld, giả sử
   com.hello.world.PackageInfo1.java
   com.hello.world.PackageInfo2.java

sau đó tái cấu trúc chúng bằng cách chuyển chúng sang com và com.hello tương ứng. Bạn sẽ thấy com và com.hello ngồi đó tại Project ( Alt+1 hoặc Command+1cho phím tắt) và đổi tên thư mục tái cấu trúc đang chờ ở đó như bạn mong đợi.

  • Tái cấu trúc để đổi tên một hoặc nhiều thư mục này để đạt được mục tiêu của bạn. Điều duy nhất bạn cần chú ý ở đây là bạn phải chọn các thư mục thay vì Gói khi hộp thoại hỏi bạn.

  • Nếu bạn có nhiều lớp trong dự án của mình, bạn sẽ mất một thời gian để chờ tự động quét và đổi tên.

  • Ngoài ra, bạn cần đổi tên tên gói trong AndroidManifest.xml theo cách thủ công, tôi đoán, sao cho các tên khác trong tệp này có thể có lợi cho tiền tố.

  • [CSONG] , có thể bạn cần thay thế tất cả com.hello.world.Rthành mới XXX.XXX.XXX.R( Command+Shift+Rgọi tắt là)

  • Xây dựng lại và chạy dự án của bạn để xem liệu nó hoạt động. Và sử dụng "Tìm trong đường dẫn" để tìm các tên không liên lạc khác mà bạn muốn đổi tên.

  • Hãy tận hưởng nó.

6

Hãy chắc chắn để đi đến câu trả lời tuyệt vời của Sheharyar . Có rất nhiều câu trả lời và bình luận theo đó sẽ dễ bị nhầm lẫn và bỏ cuộc, nhưng đừng . Câu trả lời đó hoạt động .

Nói tóm lại, bạn làm ba việc :

(1) Bỏ chọn Compact Empty Middle Packages .

(2) Refactorsau đó Renamemỗi nút thư mục cũ bằng cách chọn Change Package( không phải Change Directory ) để khớp với tên gói mới. (Hãy chắc chắn để thực hiện xem trước các thay đổi.)

(3) Chỉnh sửa build.gradletập tin và APPLICATION_IDkhớp với tên gói mới.


3
Bất cứ ai đánh giá thấp điều này thực sự đang thiếu thứ gì đó, vì Câu trả lời của tôi là bản tóm tắt câu trả lời của Sheharyar THAT GOT 332 UPVOTES và tất cả những gì tôi đã làm là đơn giản hóa nó vì nó có vẻ liên quan (không phải vậy). Thần kinh của một số người thiển cận, kích hoạt hạnh phúc. Sẽ YÊU để xem lý do cho downvote. Không có nghi ngờ tôi sẽ không nhìn thấy nó.
DSlomer64

ĐỒNG Ý. Kể từ 3,5 năm sau, tôi có thể thấy lý do tại sao các downvote có thể được tạo ra vì nó có thể không hoàn toàn rõ ràng như nó (nhưng đã cắt giảm một chút!), Nhưng chắc chắn là bây giờ, nhờ hai ngày của @Peter Mortensen -old chỉnh sửa và của tôi ngay bây giờ.
DSlomer64

5

Cập nhật câu trả lời: Tháng 5 năm 2015

OK Tôi đã vật lộn với các dự án nhân bản và đổi tên trong Android Studio, nhưng cuối cùng tôi đã đạt được nó. Dưới đây là các bước để làm theo:

  1. Sao chép thư mục dự án, đổi tên và mở nó với Android Studio
  2. Đổi tên thư mục mô-đun từ explorer
  3. Đổi tên projectName.iml và nội dung
  4. Đổi tên ý tưởng / .name nội dung
  5. Trong ngăn Dự án của bạn, nhấp vào biểu tượng bánh răng nhỏ -> bỏ chọn "Gói rỗng giữa nhỏ gọn"
  6. Refactor thư mục src cho tên gói mới (đổi tên gói, "không đổi tên thư mục")
  7. Trong build.gradle đổi tên id ứng dụng
  8. cài đặt. Nâng cấp mô-đun đổi tên

Đó là nó...


5

Tôi đã tìm thấy một giải pháp dễ dàng hơn cho vấn đề này cũng thay đổi nhập khẩu được tạo như thế nào com.test.testpackagechange.Rvà chỉ mất khoảng một phút.

Bước đầu tiên của bạn là mở Android Studio và mở cửa sổ thay thế tất cả (Mac: cmd + shift + R, Windows tôi giả sử: ctrl + shift + R). Nhập tên gói cũ của bạn và vào tên bên dưới tên gói mới của bạn. Bấm Tìm. Điều này có thể mất một lúc vì nó cũng đang xem qua các mục được tạo. Nếu nó có hơn 1000 lượt truy cập, chỉ cần nhấp vào tiếp tục.

nhập mô tả hình ảnh ở đây

Sau khi thực hiện xong, hãy đẩy Thay thế tất cả để thay thế tên gói cũ của bạn bằng tên mới.

nhập mô tả hình ảnh ở đây

Bây giờ hãy đóng Android Studio và đi tới Finder trên Mac hoặc Windows Explorer trên Windows. Thay đổi tên của các thư mục thành tên gói mới của bạn, như thế này:

nhập mô tả hình ảnh ở đây

Bây giờ hãy mở lại Android Studio. Gradle sẽ đồng bộ hóa và tên gói của bạn nên được đổi thành tên mới.

Tôi đã thấy đây là cách dễ nhất và là khu vực bao gồm tất cả các khu vực như các tệp được tạo.


5

Lỗi phổ biến mà người ta có thể mắc phải là người ta không thể đổi tên cấu trúc gói, nghĩa là không thể thay đổi com.name.android thành com.Renamed.android khi một người cố gắng sửa đổi ở cấp độ com.name.android .

Để có cùng một thay đổi mong muốn, hãy tăng một cấp, tức là com.name và ở đây khi bạn cấu trúc lại thay đổi thành Đổi tên . Điều này sẽ làm việc luôn.


5

Tôi tìm thấy một cách khác hoạt động hoặc thêm một bước cho một số câu trả lời ở đây đặc biệt là nếu bạn muốn thay đổi tên miền. Nó hoạt động trong Android Studio 1.4. Đây là những gì tôi đã làm:

  1. Mở Manifest.xml và thay đổi tên gói thành những gì bạn muốn.
  2. Mở build.gradletệp ứng dụng của bạn và thay đổi Id ứng dụng trong defaultConfig thành cùng tên như trong bảng kê khai và xây dựng lại dự án.
  3. Nếu vẫn còn sự cố, hãy mở tệp dưới tên gói, đi đến gói bánh mì gói (nghĩa là khai báo gói ở đầu tệp) và đặt con trỏ của bạn đến tên miền bạn muốn thay đổi và nhấn "Shift + F6", nó sẽ xuất hiện với một hộp thoại có nhiều cảnh báo sử dụng, nhấp vào "Đổi tên gói" và sau đó nhấp vào "Do Refactor", nó sẽ đổi tên mọi thứ, kể cả các tệp R.Java.

Vì vậy, ví dụ nếu bạn muốn đổi tên "com.example.app" thành "com.YourDomain.app", hãy mở một tệp trong gói để được đổi tên, trong gói bánh mì, đặt con trỏ của bạn thành phần "ví dụ" của tên miền và nhấn Shift+ F6và đổi tên gói thành "YourDomain".


5
  1. Chọn tên gói trong thư mục Java.
  2. Shift+F6
  3. Thay đổi tên gói và bấm vào OK.

Tên gói của bạn sẽ được thay đổi từ tất cả các tệp Java và tệp kê khai. Bạn phải tự thay đổi tên gói từ build.gradle.


1
Nếu Shift + F6 không hoạt động cho bạn, thì bạn có thể thử Alt + Shift + R để cấu trúc lại gói. Phần còn lại của thủ tục là như nhau
Uncaught Exception

5

Thay đổi tên gói


Để đổi tên tên gói của bạn, tất cả những gì bạn phải làm là vào AndroidManifest.xmltệp của mình , đặt con trỏ chuột trước phần tên gói bạn muốn thay đổi.


nhập mô tả hình ảnh ở đây


Nhấp chuột phải> Refactor> Đổi tên


nhập mô tả hình ảnh ở đây


Trong cửa sổ mới, nhấn Đổi tên gói


nhập mô tả hình ảnh ở đây


Thay đổi tên và nhấn Refactor


nhập mô tả hình ảnh ở đây


Khoan và nhấn Do Refactor ở phía dưới.


nhập mô tả hình ảnh ở đây


Tên gói của bạn thường có định dạng com.domain.appname, trong ví dụ này, chúng tôi đã thay đổi phần tên ứng dụng, nhưng bạn cũng có thể thực hiện các bước tương tự cho tên miền.

Làm xong! Bạn đã thay đổi tên gói của bạn!


4

Tôi đã thử hai giải pháp được bình chọn hàng đầu nhưng thấy một số vấn đề mặc dù cả hai đều hoạt động ở một mức độ nào đó.

  • Danh sách mục: Phương thức kéo thả gói mới không thay đổi và tạo ra một số hiệu ứng không mong muốn
  • Mục danh sách: Gói đổi tên chỉ thay đổi phần cuối của tên gói

Sau một số thí nghiệm tôi thấy phương pháp sau hoạt động tốt với tôi.

Nếu bạn chỉ cần thay đổi phần cuối của tên gói, hãy sử dụng phương thức được GreyBeardedGeek vạch ra, cụ thể là

Nhấp chuột phải vào gói trong khung Project. Chọn Refactor -> Đổi tên từ menu ngữ cảnh

Nếu bạn cần thay đổi toàn bộ tên gói, hãy làm như sau.

Nhấp chuột phải vào gói trong khung Project. Chọn Refactor -> Di chuyển từ menu ngữ cảnh

Điều này sẽ tạo một thư mục gói mới (khi cần thiết) nhưng sẽ giữ phần cuối của tên gói của bạn như trước. Nếu bạn cần thay đổi phần cuối cùng, hãy đổi tên cho phù hợp.

Cũng lưu ý rằng bạn có thể cần sửa đổi tên gói trong ví dụ build.gradle, tệp kê khai và / hoặc bất kỳ tệp tài nguyên xml nào hoặc thậm chí trong mã của bạn nếu được mã hóa cứng. Sau tất cả, hãy thực hiện dự án Sync / Clean / Rebuild khi cần thiết.


4

Cách đổi tên com.example.appthành com.android.app:

  1. trong gói com.example.appchọn ví dụ

  2. Shift + F6

  3. chọn rename package

  4. đổi tên ví dụ thành android

  5. xác nhận do refactor


4

Nhấp chuột phải vào gói -> refactor và thay đổi tên.

Bạn cũng có thể thay đổi nó trong bảng kê khai. Đôi khi nếu bạn thay đổi tên gói, nhưng sau khi tạo tệp .apk, nó sẽ hiển thị một tên gói khác. Tại thời điểm đó, hãy kiểm tra "applicationId" trong tệp build.gradle .


4

Tôi khuyên bạn nên sử dụng Văn bản cao siêu (hoặc Notepad ++ ). Thay thế com.one.lastname -> com.two.newname và com / one / lastname -> com / hai / newname trong ... \ Project [MyProject]. và đừng quên đổi tên ... \ Project \ MyProject \ app \ src \ main \ java \ com \ one \ Lastname, ... \ Project \ MyProject \ app \ src \ test \ java \ com \ one \ lastname và ... \ Project \ MyProject \ app \ src \ androidTest \ java \ com \ one \ Lastname!

Đó là tất cả:)

Ảnh chụp màn hình


3

Điều này tôi tin rằng những gì bạn đang tìm kiếm là Refactor> Move. Bạn cũng có thể nhấn F6.

Bạn sẽ nhận được hai cửa sổ bật lên. Hãy chắc chắn rằng bạn chọn đổi tên gói trên cả hai. Sau đó, bạn sẽ nhận được một cửa sổ bật lên để đặt tên gói mới.

Xin lưu ý rằng nếu tên gói của bạn là, ví dụ, com.example.android.projectname thì điều này sẽ cho phép bạn thay đổi com.example.android thành một tên khác.

Một điều nữa, điều này cũng sẽ cập nhật applicationId trong build.gradle của bạn. Chỉ cần đảm bảo rằng các hộp kiểm cho "tìm kiếm trong các bình luận và chuỗi" và "tìm kiếm sự xuất hiện của văn bản" đều được kiểm tra để nó hoạt động.


3

Cách nhanh chóng và dễ dàng:

1- mở MainActivity.javahoặc bất kỳ tập tin java có sẵn.

Trên cùng có khai báo gói như:

gói com. example.ứng dụng của tôi;

chọn phần gói bạn muốn thay đổi và nhấn Shift + F6 . Cá nhân tôi muốn thay đổi example.

Trong hộp thoại cảnh báo, chọn Đổi tên gói và sau đó chèn tên gói mong muốn.

2- Thẻ mở AndroidManifest.xmlvà bên trong <manifest>thay đổi packagetên gói mong muốn.

3- mở build.gradle(Module: app)và thay đổi applicationIdtên gói mong muốn.


Cảm ơn bạn. Nó khá đơn giản và dễ hiểu.
Ishwor Khanal

3
  1. Chọn tùy chọn nhập mô tả hình ảnh ở đây

  2. Bỏ chọn tùy chọn Gói rỗng giữa nhỏ gọn.

  3. Chọn thư mục bạn muốn thay đổi (Tôi đã chọn 'crl' được hiển thị trong bước 6).
  4. Shift+F6
  5. Đổi tên gói
  6. Đổi tên thư mục crl thành crl1 nhập mô tả hình ảnh ở đây

  7. Cuối cùng bấm vào nút Do Refactor được đánh dấu trong hình bên dưới, nhập mô tả hình ảnh ở đây nhập mã vào đây

  8. Sau khi thay đổi xong nhập mô tả hình ảnh ở đây


3

Vui lòng thử các bước sau:

  1. Nhấp vào cài đặt biểu tượng bánh răng và bỏ chọn Gói trung gian rỗng
  2. Bây giờ chúng ta có thể thấy mỗi thư mục gói được chia thành các phần
  3. Bây giờ, nhấp chuột phải vào thư mục gói đầu tiên >>> refactor >>> đổi tên
  4. Bây giờ một cảnh báo sẽ được hiển thị nhưng bạn tiếp tục và nhấp vào Đổi tên gói
  5. Sau đó, nhập tên miền của bạn cho tên gói
  6. Nhấp vào 'Do Refactor'
  7. Bây giờ nó đã thay đổi tên miền gói của Ứng dụng. Bây giờ Thay đổi phần mở rộng tên miền và tên thư mục ứng dụng theo yêu cầu của bạn
  8. Bây giờ hãy mở build.gradle (Module: ứng dụng) trong Gradle Sc scripts. Tại đây thay đổi id ứng dụng và nhấp vào Sync Now.

****** Cuối cùng cũng xong rồi ******


3
  1. Nhấn Ctrl+ Shift+R

  2. Thay thế gói cũ bằng gói mới.

  3. Nhấp chuột phải vào tên gói.

  4. Refactor> Renamevà đổi tên thành cái mới


3

ctrl+ Shift+ Rđã luôn làm việc cho tôi. Đơn giản replace allvà chọn All Files.


điều này sẽ không cập nhật các thư mục và nó sẽ không tìm thấy bất kỳ lớp nào của bạn
john ktejik

3
  • Phần đầu tiên bao gồm tạo một gói mới trong javathư mục và chọn sau đó kéo tất cả các tệp nguồn của bạn từ old packagenày sang new package. Sau đó, bạn cần remaneđặt tên gói trong Android manifestthành tên của gói mới.

  • Trong bước 2, đây là những gì bạn cần làm. Bạn cần thay đổi tên gói cũ trong applicationIdmô-đun build.gradletrong studio android của bạn ngoài việc thay đổi tên gói trong manifest. Vì vậy, tóm lại, nhấp vào build.gradlecái bên dưới "AndroidManifest.xml" và sửa đổi giá trị của applicationIdtên gói mới của bạn.

  • Sau đó, ở trên cùng, dưới build. cleandự án của bạn, sau đó rebuild. Nó sẽ ổn từ đây.


3

Cách tốt nhất là viết tên gói mới và kéo từ tên gói cũ hơn.

Cách thứ hai, nếu bạn bấm vào Refactor rồi di chuyển tùy chọn sau đó đổi tên tên gói, nó sẽ đổi tên tên gói và sau đó xây dựng lại.

Trong Build.gradle bạn phải thực hiện thủ công, nếu bạn Refactor thì nó sẽ không đổi tên trong Build.gradle.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.