android 합니다 안드로이드 스튜디오 이름 바꾸기 패키지




어플 패키지 이름 (24)

intelijj를 기반으로 새로운 IDE Android Studio에서 패키지 이름을 어떻게 바꿉니 까?

자동 리팩터링이 포함되어 있습니까?

대량 리팩터링을 만들고 싶지만 어떻게해야할지 모르겠다. 나는 이클립스와 함께 2 년 동안 일했고, 일식 클릭으로 작동했다.


다음 단계를 시도하십시오.

  1. 기어 아이콘 설정을 클릭하고 콤팩트 빈 중간 패키지를 선택 취소하십시오.
  2. 이제 각 패키지 폴더가 여러 부분으로 나누어 져 있음을 볼 수 있습니다.
  3. 이제 첫 번째 패키지 폴더 >>> 리팩터링 >>> 이름 바꾸기를 마우스 오른쪽 버튼으로 클릭하십시오.
  4. 이제 경고가 표시되지만 패키지 이름 바꾸기를 클릭하십시오.
  5. 그 후에 패키지 이름에 대한 도메인 이름을 입력하십시오.
  6. '리팩터링'을 클릭하십시오.
  7. 이제 앱의 패키지 도메인 이름이 변경되었습니다. 이제 요구 사항에 따라 도메인 확장명과 앱 폴더 이름을 변경하십시오.
  8. 이제 Gradle 스크립트에서 build.gradle (Module : app)을 엽니 다. 여기에서 응용 프로그램 ID를 변경하고 지금 동기화를 클릭하십시오.

******* 마침내 끝났어 ******


패키지 이름이 두 개 이상의 점으로 구분되어 있고 com.hello.world 라고 com.hello.world com/com/hello/ 에 아무 것도 입력하지 않은 것입니다. 모든 클래스가 com/hello/world/ 에 배치됩니다. Android Studio 또는 IntelliJ에서 패키지 이름을 리팩터링하는 다음 단계를 수행 할 수 있습니다.

  • [FIRST] 디렉토리 ( com/ , com/hello/ ) 아래에 무언가를 추가하십시오. 먼저 com.hello.world 패키지에 두 개의 파일을 추가하여이 작업을 수행 할 수 있습니다.
   com.hello.world.PackageInfo1.java
   com.hello.world.PackageInfo2.java

com과 com.hello로 이동하여 리팩터링하십시오. com과 com.hello가 프로젝트 ( Alt+1 또는 Command+1 바로 가기)에 있고 이름을 바꾸면 리팩터링이 예상대로 기다리고 있습니다.

  • 귀하의 목표를 달성하기 위해 하나 이상의 디렉토리를 리팩토링하십시오. 여기서주의해야 할 것은 대화 상자가 나타날 때 패키지가 아닌 디렉토리를 선택해야한다는 것입니다.

  • 프로젝트에 많은 수업이있는 경우 자동 스캔 및 이름 바꾸기를 기다리는 동안 시간이 오래 걸립니다.

  • 게다가 수동으로 AndroidManifest.xml 내에서 패키지 이름의 이름을 바꾸어야합니다.이 파일의 다른 이름이 접두사에 도움이 될 수 있습니다.

  • [또한] com.hello.world.R 을 새로운 XXX.XXX.XXX.R 로 대체해야 할 수도 있습니다 (짧게 Command+Shift+R ).

  • 프로젝트를 다시 빌드하고 실행하여 작동 여부를 확인하십시오. "경로에서 찾기"를 사용하여 이름을 바꾸려는 다른 비 터치 이름을 찾습니다.

  • 그것을 즐겨라.

업데이트 된 답변 : 2015 년 5 월

OK 나는 안드로이드 스튜디오에서 프로젝트를 복제하고 이름을 바꾸는 데 어려움을 겪었지만 마침내 그것을 성취했습니다. 따라야 할 단계는 다음과 같습니다.

  1. 프로젝트 폴더를 복사하고 이름을 바꾸고 Android Studio에서 엽니 다.
  2. 탐색기에서 모듈 디렉토리 이름 바꾸기
  3. projectName.iml 및 내용의 이름 바꾸기
  4. 아이디어 / .name 내용의 이름 바꾸기
  5. 프로젝트 창에서 작은 톱니 바퀴 아이콘을 클릭하고 "콤팩트 빈 중간 패키지"를 선택 해제합니다.
  6. 새 패키지 이름에 대한 src 디렉토리 리팩터링 (패키지의 이름을 바꾸고 "디렉토리의 이름을 바꾸지 않음")
  7. build.gradle에서 애플리케이션 ID 이름 바꾸기
  8. settings.gradle 모듈 이름 바꾸기

그게 ...


Android Studio에서 다음 작업을 수행 할 수 있습니다.

예를 들어, com.example.appmy.awesome.game 으로 변경하려면 다음을 수행하십시오.

  1. 프로젝트 창 에서 작은 톱니 바퀴 아이콘 ( )

  2. Compact Empty Middle Packages 옵션을 선택 취소하거나 선택 취소하십시오.

  1. 이제 패키지 디렉토리가 개별 디렉토리에서 분리됩니다.

  2. 이름을 바꿀 각 디렉토리를 개별적으로 선택하고 :

    • 마우스 오른쪽 버튼으로 클릭하십시오.
    • Refactor 선택
    • Rename 클릭하십시오.
    • 팝업 대화 상자에서 디렉토리 이름 바꾸기 대신 Rename Package 클릭하십시오.
    • 새 이름을 입력하고 Refactor를 누르십시오.
    • 하단의 리팩터링 을 클릭하십시오.
    • 잠시만 기다려주세요. Android Studio에서 모든 변경 사항을 업데이트하도록 허용합니다.
    • 참고 : Android Studio에서 com 이름을 변경하면 경고가 표시 될 수 있습니다. 이 경우 모두 이름 바꾸기를 선택하십시오.

  1. 이제 Gradle Build File ( build.gradle - 일반적으로 app 또는 mobile )을 엽니 다. defaultConfigapplicationId 가 새 패키지 이름과 동기화 받침대 (아직 자동으로 업데이트되지 않은 경우)로 업데이트하십시오.

  1. 매니페스트에서 package= 속성을 변경해야 할 수 있습니다.

  2. 깨끗이하고 다시 작성하십시오.

  3. 끝난! 어쨌든 Android Studio는이 과정을 좀 더 단순하게 만들어야합니다.


  1. Java 폴더에서 패키지 이름을 선택하십시오.
  2. Shift + F6
  3. 패키지 이름을 변경하고 확인을 클릭하십시오.

패키지 이름은 모든 Java 파일 및 Manifest 파일에서 변경됩니다. build.gradle에서 수동으로 패키지 이름을 변경해야합니다.



공통적 인 실수는 패키지 구조의 이름을 바꿀 수 없다는 것입니다. 즉, com.name.android를 com.name.android 레벨에서 수정할 때 com.name.android를 com.Renamed.android로 변경할 수 없습니다.

동일한 원하는 변경 사항을 갖기 위해서는 com.name과 같은 레벨을 올리면됩니다. 여기서 refactor를 Rename으로 변경하십시오. 항상 작동합니다.


그건 나를 위해 아주 잘, 심지어는 패키지를 수정하려는 폴더 이름에 대한 모든 모듈에서 사건을 변경하기 위해,하지만, 나를 위해, 다음 단계를 정확히 따라야 잘 작동합니다 :

  • A - 루트 폴더의 이름 (패키지에서 정상적으로 활동하는 폴더 이름) 을 변경 하려면 다음 단계 (B에서 C) 이전 또는 이후에 수행 할 수 있습니다. "Android Studio"를 종료하고이 루트 폴더의 이름을 수동으로 바꿉니다. "프로젝트 가져 오기 ..."를 클릭 한 다음 프로젝트의 새 이름을 클릭하십시오 (이 가져 오기 프로세스는 프로젝트 파일을 사용하여 'Gradle'파일을 자동으로 다시 조정합니다).
  • B - 다음 C 단계 전에 패키지에서 변경할 폴더 이름을 수동으로 수정해야합니다. 'AndroidManifest.xml', 'MainActivity.java'(또는 궁극적으로 첫 번째 활동을 선택하십시오) 및 'build.gradle (Module : app)'파일을 선택하십시오.
  • C - 위에서 설명한 1 ~ 6 단계를 따르십시오 ( "프로젝트 창에서 작은 기어 아이콘을 클릭하십시오 ...") -> https://.com/a/29092698/2001610
  • D - 위에서 설명한대로 루트 폴더의 이름을 지금 변경하려는 경우에만 'A'프로세스를 수행 할 수 있습니다.

새 패키지 이름을 작성하고 이전 패키지 이름에서 드래그하는 가장 좋은 방법. 두 번째 방법으로 Refactor를 클릭하고 옵션을 이동 한 다음 패키지 이름의 이름을 변경하면 패키지 이름의 이름이 바뀌고 다시 빌드됩니다.

Build.gradle에서 당신은 수동으로해야만합니다. Refactor를 사용하면 Build.gradle에서 이름을 바꾸지 않습니다.


com.test.testpackagechange.R 과 같이 생성 된 가져 오기를 변경 한이 문제에 대한보다 쉬운 해결책을 발견했으며 약 1 분 밖에 걸리지 com.test.testpackagechange.R .

첫 번째 단계는 Android Studio를 열고 모든 창 바꾸기 (Mac : cmd + shift + R, Windows : Ctrl + Shift + R)입니다. 이전 패키지 이름과 새 패키지 이름을 입력하십시오. 찾기를 클릭하십시오. 생성 된 항목을 살펴보고 있기 때문에 시간이 걸릴 수도 있습니다. 1000 회 이상의 조회가 발생하면 계속을 클릭하십시오.

완료 한 후 모두 바꾸기를 눌러 이전 패키지 이름을 새 패키지 이름으로 바꿉니다.

이제 Android Studio를 닫고 Mac의 Finder 또는 Windows의 Windows 탐색기로 이동하십시오. 다음과 같이 폴더 이름을 새 패키지 이름으로 변경하십시오.

이제 Android Studio를 다시 엽니 다. Gradle이 동기화되고 패키지 이름이 새 이름으로 변경되어야합니다.

나는 이것이 가장 쉬운 파일이고 생성 된 파일과 같은 모든 영역을 다루는 파일이라는 것을 알았습니다.


리팩토링 될 패키지를 선택하고 리팩터링 -> 이동 -> "xxx를 새 패키지로 이동"


나는 최고의 투표 응답을 보았다. 그러나 나는 이것을하기 위해 조금 다르다, 나는 가장 완전한 튜토리얼을하려고 노력했다.

Android Studio에서 톱니 바퀴 아이콘 ( )을 선택한 다음 "Compact Empty Middle Packages" 옵션을 선택하여 폴더를 트리보기로 구분하십시오.

이제 폴더를 선택하고 마우스 오른쪽 버튼을 클릭하여 컨텍스트 메뉴를 열고 Refactor 를 선택한 다음 Rename 선택하십시오.

패키지를 리팩터링하는 것이 좋습니다.

그런 다음 창에 proyect 내의 우연한 모습이 표시되고 "Do Refactor" 선택하십시오.

AndroidManifest.xml 또는 build.gradle 파일을 수동으로 변경하지 않아도 패키지를 리팩토링하면 작업이 완료됩니다!.


또 다른 좋은 방법은 다음과 같습니다. 먼저 java 폴더 -> new -> package를 마우스 오른쪽 버튼으로 클릭하여 원하는 이름으로 새 패키지를 만듭니다.

그런 다음 모든 클래스를 선택하여 새 패키지로 드래그하십시오. AndroidStudio는 어디서나 패키지 이름을 리팩터링합니다.

마지막으로 이전 패키지를 삭제하십시오.

끝난.

한 가지 더 중요한 일

이 방법을 사용하는 경우 AndroidManifest.xml을 수동으로 변경하고 build.gradle 파일을 새 패키지로 변경해야합니다.


패키지 -> 리팩터를 오른쪽 클릭하고 이름을 변경하십시오. 매니페스트에서 변경할 수도 있습니다. 때로는 u가 패키지 이름을 변경하지만 apk를 생성 한 후 그 시간에 다른 패키지 이름을 표시하면 build.gradle 파일의 "applicationId"를 확인하십시오.


Sublime Text (또는 Notepad ++)를 사용하는 것이 좋습니다. ... \ Projects [MyProject]의 com.one.lastname-> com.two.newname 및 com / one / lastname-> com / two / newname을 바꾸십시오. ... \ Projects \ MyProject \ app \ src \ main \ java \ com \ one \ lastname ... \ Projects \ MyProject \ app \ src \ test \ java \ com \ one \ lastname의 이름을 바꾸는 것을 잊지 마십시오. 및 ... \ Projects \ MyProject \ app \ src \ androidTest \ java \ com \ one \ lastname! 그게 다야:)


이러한 기술 중 하나를 수행하여 패키지의 이름을 변경하면 오류가 표시 될 수 있습니다.

R.java가 제대로 생성되지 않으면 프로젝트에서 error: cannot find symbol class R error: package R does not exist .

응용 프로그램 매니페스트 XML을 반드시 확인하십시오. 매니페스트 패키지 이름 실제 패키지 이름 과 일치해야합니다 . R.java가 Application Manifest에서 생성 된 것으로 보이며 불일치가있는 경우 이러한 오류가 발생할 수 있습니다.

<manifest package="com.yourcompany.coolapp"> 에서 일치하는 package 속성을 확인하십시오.


빠르고 쉬운 방법 :

1- MainActivity.java 또는 사용 가능한 모든 Java 파일을 엽니 다.

맨 위에는 다음과 같은 패키지 선언이 있습니다.

package com. example .myapp;

변경할 패키지 부분을 선택하고 Shift + F6을 누릅니다 . 개인적으로 example 를 바꾸고 싶습니다.

경고 대화 상자에서 패키지 이름 바꾸기 를 선택한 다음 원하는 패키지 이름을 삽입하십시오.

2 - AndroidManifest.xml 열고 <manifest> 태그 안의 package 는 원하는 패키지 이름으로 package 를 변경합니다.

3 build.gradle(Module: app) 열고 applicationId 를 원하는 패키지 이름으로 변경합니다.


나는 다른 방법, 특히 당신이 도메인을 변경하기를 원한다면 여기에 대한 답을 얻기위한 추가 단계를 발견했다. 안드로이드 스튜디오 1.4에서 작동합니다. 이것이 내가 한 일이다.

  1. Manifest.xml을 열고 패키지 이름을 원하는 것으로 변경하십시오.
  2. app build.gradle 파일을 열고 defaultConfig의 Application Id를 manifest의 이름과 동일한 이름으로 변경하고 프로젝트를 다시 빌드하십시오.
  3. 여전히 문제가 발생하면 패키지 이름 아래에서 파일을 열고 breadcrumbs 패키지 (즉, 파일 머리글의 패키지 선언)로 이동하여 변경하려는 도메인에 커서를 놓고 "Shift + F6"을 누르면 다음과 같이 나타납니다 다중 사용 경고가있는 대화 상자에서 "패키지 이름 바꾸기"를 클릭 한 다음 "리팩터링"을 클릭하면 R.Java 파일을 포함한 모든 이름이 바뀌어야합니다.

예를 들어 "com.example.app"의 이름을 "com.YourDomain.app"로 바꾸려면 패키지 breadcrumbs에서 패키지 이름 아래에있는 파일을 열고 커서를 도메인의 "example"부분에 설정하십시오 Shift + F6을 누르고 패키지 이름을 "YourDomain"으로 변경하십시오.

희망이 도움이 :)


시작하는 Sheharyar의 답변으로 돌아 가야합니다 In Android Studio, you can do this: 훌륭합니다. 혼란스러워하고 포기하기 쉽다는 답변과 댓글이 너무 많습니다.하지만하지 마십시오. 그 해답.

간단히 말해서, 당신은 세 가지를합니다 :

Compact Empty Middle Packages 선택을 취소 Compact Empty Middle Packages .

Refactor 새 패키지 이름과 일치하도록 CHANGE PACKAGE (디렉토리 아님)를 선택하여 각 이전 디렉토리 노드의 Rename . 변경 사항을 미리 확인하십시오.

build.gradle 파일을 편집하고 APPLICATION_ID 새 패키지 이름과 일치 build.gradle 십시오.


프로젝트 패널 에서 패키지를 마우스 오른쪽 단추로 클릭하십시오.

컨텍스트 메뉴에서 리팩터링 -> 이름 바꾸기를 선택하십시오.


Ctrl + Shift + R은 항상 나를 위해 일해 왔습니다. 모든 파일을 대체하고 모든 파일을 선택하기 만하면됩니다.


이것은 당신이 찾고있는 것이 Refactor> Move라고 믿습니다. F6 키를 누를 수도 있습니다.

두 개의 팝업이 나타납니다. 두 패키지에서 모두 패키지 이름 바꾸기를 선택하십시오. 그 후에 새 패키지 이름을 넣을 팝업이 나타납니다.

예를 들어 패키지 이름이 com.example.android.projectname 인 경우 com.example.android를 다른 것으로 변경할 수 있습니다.

한 가지 더요. 그러면 build.gradle의 applicationId도 업데이트됩니다. "주석 및 문자열에서 검색"및 "텍스트 어커런스 검색"에 대한 확인란이 모두 선택되어 있는지 확인하십시오.


응용 프로그램 ID를 변경하면 (이제 패키지 이름과 독립적 임) 한 단계에서 매우 쉽게 수행 할 수 있습니다. AndroidManifest를 만질 필요는 없습니다. 대신 다음을 수행하십시오.

  1. 프로젝트의 루트 폴더를 마우스 오른쪽 버튼으로 클릭하십시오.
  2. "모듈 열기 설정"을 클릭하십시오.
  3. Flavors 탭으로 이동하십시오.
  4. applicationID를 원하는 패키지 이름으로 변경하십시오. 확인을 누릅니다.

패키지 이름은 변경 되지 않습니다 . 패키지 이름과 애플리케이션 ID의 분리 방법은 다음 페이지에서 설명합니다. http://tools.android.com/tech-docs/new-build-system/applicationid-vs-packagename


나는 두 가지 최고 득표를 한 해결책을 시도했지만 두 문제가 어느 정도 해결 되더라도 문제를 발견했다.

  • 목록 항목 : 새로운 패키지 - 끌어서 놓기 방법은 일부를 변경하지 않고 일부 바람직하지 않은 효과를 만듭니다.
  • 목록 항목 : 이름 바꾸기 패키지는 패키지 이름의 마지막 부분 만 변경합니다.

몇 가지 실험을 한 후에 다음 방법이 잘 작동한다는 것을 알게되었습니다.

패키지 이름의 마지막 부분을 변경하기 만하면 GreyBeardedGeek에서 설명한 방법을 사용하십시오.

프로젝트 창에서 패키지를 마우스 오른쪽 단추로 클릭하십시오. 컨텍스트 메뉴에서 리팩터링 -> 이름 바꾸기를 선택하십시오.

전체 패키지 이름을 변경해야하는 경우 다음을 수행하십시오.

프로젝트 창에서 패키지를 마우스 오른쪽 단추로 클릭하십시오. 컨텍스트 메뉴에서 리팩터링 -> 이동을 선택하십시오.

이렇게하면 (필요할 때) 새 패키지 폴더가 생성되지만 패키지 이름의 마지막 부분은 이전과 동일하게 유지됩니다. 마지막 파트를 변경해야하는 경우 그에 따라 이름을 변경하십시오.

build.gradle, manifest 및 / 또는 xml 리소스 파일이나 하드 코드 된 경우 코드에서 패키지 이름을 수정해야 할 수도 있습니다. 그 후에도 필요에 따라 동기화 / 정리 / 다시 빌드 프로젝트를 수행하십시오.





android-studio