Переименовать пакет в Android Studio

1362

Как вы переименовываете пакеты в новой IDE Android Studio, основанной на IntelliJ IDEA?

Включен ли автоматический рефакторинг?

Я хочу сделать массовый рефакторинг, но я не знаю как. Я работал два года с Eclipse, и в Eclipse это операция в один клик.

ramzixp
источник
Пожалуйста, посмотрите мой ответ здесь . Мне удалось переименовать мой проект, используя шаги, которые я описал.
Ли
возможный дубликат изменения имени проекта в Android Studio
Leigh
Шаг за шагом Процесс изменения имени пакета ... stackoverflow.com/a/46945668/6915572
Шубхам Сони
Ответ Шехаряра работает как положено. т.е. 1. Рефакторинг 2. Редактировать build.gradle. Однако вам придется следить за этим, изменив атрибут app_name в файле strings.xml!
Сухас Малля

Ответы:

2851

В Android Studio вы можете сделать это:

Например, если вы хотите изменить com.example.appна my.awesome.game, то:

  1. На панели вашего проекта нажмите на маленький значок шестеренки ( Значок шестерни)

  2. Снимите флажок / отмените выбор Compact Empty Middle Packagesопции

    Компактные пустые средние пакеты

  3. Ваша директория пакета теперь будет разбита на отдельные директории

  4. Индивидуально выберите каждый каталог, который вы хотите переименовать, и:

    • Щелкните правой кнопкой мыши
    • Выбрать Refactor
    • Нажмите на Rename
    • Во всплывающем диалоговом окне нажмите Rename Packageвместо «Переименовать каталог».
    • Введите новое имя и нажмите Refactor
    • Нажмите Do Refactor в нижней части
    • Подождите, пока Android Studio обновит все изменения
    • Примечание. При переименовании comв Android Studio может появиться предупреждение. В таком случае выберите Rename All

    Введите описание изображения здесь

  5. Теперь откройте ваш файл сборки Gradle ( build.gradle- Обычно appили mobile). Обновите applicationIdв defaultConfigсвой новый имя пакета и Grad Gradle, если он еще не был обновлен автоматически:

    Рефакторинг каталогов

  6. Возможно, вам придется изменить package=атрибут в вашем манифесте.

  7. Очистить и восстановить.

  8. Выполнено! В любом случае, Android Studio нужно сделать этот процесс немного проще.

Sheharyar
источник
32
Очистить и восстановить.
Шехарьяр
20
ВНИМАНИЕ: если вы выберете «Переименовать все», когда переименуете также «com», он переименует не только вещи в выбранный модуль, но и во все модули этого проекта
ricky.tribbia
17
@Antonio перетащить файлы в com.example.testк com.exampleи затем удалить com.example.test.
Дик Лукас
27
Эта процедура сработала для меня. Мне также пришлось изменить AndroidManifest.xml, чтобы отразить новое имя. Например -> package = "my.awesome.game">
nevzo
11
Если вы используете firebase, также измените имя пакета в google-services.json.
Самар,
550

Еще один хороший метод: сначала создайте новый пакет с нужным именем, щелкнув правой кнопкой мыши папку Java → СоздатьПакет .

Затем выберите и перетащите все ваши классы в новый пакет. Android Studio будет проводить рефакторинг имени пакета везде.

Наконец, удалите старый пакет.

Выполнено.

Очень важно:

Вы должны вручную изменить AndroidManifest.xml и файл build.gradle на новый пакет, если вы используете этот метод.

user10F64D4
источник
67
Возможно, вам придется обновить файл манифеста Android для ссылки на новый пакет, если вы используете этот метод. Очень простой шаг, отличное решение.
Дик Лукас
10
Возможно, вам придется перезапустить Android Studio, чтобы обновить .idea / workspace.xml
Christoph
24
Вам также может понадобиться изменить свой build.gradle, чтобы отразить новый пакет
Samik Bandyopadhyay
35
хороший метод, но пришлось сделать еще 2 вещи (кроме обновления файла манифеста), чтобы он полностью заработал, во-первых, пришлось изменить / переименовать импорт файлов R во всем проекте, а во-вторых, appdebug использовал старое имя пакета (видимое в окне запуска студии). ) добавил идентификатор приложения "com.packagename" в app build.gradle defaultconfig ..
baboo
1
@baboo Чтобы упростить эту первую часть, вы можете оптимизировать импорт файлов для всего проекта, нажав Ctrl + Alt + O и выбрав все файлы, а затем нажав кнопку «Выполнить». Это особенно полезно, если у вас есть много действий и других классов с импортом R-файла.
Самуэль Рабинович
202

Изменить идентификатор приложения (который теперь не зависит от имени пакета) можно очень легко за один шаг. Вам не нужно трогать AndroidManifest. Вместо этого сделайте следующее:

  1. щелкните правой кнопкой мыши на корневой папке вашего проекта.
  2. Нажмите «Открыть настройки модуля».
  3. Перейдите на вкладку Flavors.
  4. Измените applicationID на любое имя пакета, которое вы хотите. Нажмите ОК

Обратите внимание, что это не изменит имя пакета. Разделение имени пакета и идентификатора приложения объясняется здесь: http://tools.android.com/tech-docs/new-build-system/applicationid-vs-packagename

HWAT
источник
8
Это только меняет имя в Gradle, и больше нигде.
Джейкоб Р
4
Это один ответ Святого Грааля! Очень умно!
sud007
4
Это нужно выбрать как правильный ответ, так как это очень простой и быстрый способ следовать.
Аяз Алифов
6
Это должно быть принято, другой ответ является длинным, и вы не можете перейти com.example.sampleна com.exampleиспользование других ответов
Inder Kumar Rathore
1
Это правильный ответ. Работал как шарм с минимальным временем
Sunil
77

Подход, использованный мной для переименования имени пакета, прост:

Шаг 1. Выберите опцию «Проект» в левом меню Android Studio

введите описание изображения здесь

Шаг 2 : Щелкните правой кнопкой мыши на Java, добавьте новый пакет и установите желаемое имя пакета

введите описание изображения здесь

Шаг 3 : Введите новое имя пакета

введите описание изображения здесь

Шаг 4 : Скопируйте все файлы из старого пакета и вставьте в новый пакет

введите описание изображения здесь

Шаг 5 : переименуйте имя пакета в файле манифеста

введите описание изображения здесь

Шаг 6 : переименуйте имя пакета в файле build.gradle

введите описание изображения здесь

Шаг 7 : Затем щелкните правой кнопкой мыши старый пакет и удалите его со всеми его данными, а также удалите этот каталог.

введите описание изображения здесь

Шаг 8 : Затем перестройте свой проект

введите описание изображения здесь

Шаг 9 : Затем вы обнаружите в своем проекте ошибки старого имени пакета импорта. Выберите имя старого пакета в любом файле и нажмите CTRL + Shift + R , введите новое имя пакета в поле замены, затем нажмите найти

введите описание изображения здесь

Шаг 10 : Затем появится всплывающее окно, как показано ниже, и выберите опцию «Все файлы».

введите описание изображения здесь

Шаг 11 : Перестройте свой проект снова, бинго, имя вашего проекта было изменено :)

Мехроз Мунир
источник
1
Replace In Path больше не доступен, например Shift + R в Android Studio 2.3.3, выделите старый путь, перейдите в Edit -> Find -> Replace In Path. Также не забудьте обновить файлы Gradle. Приветствия
ralphgabb
Не получено никаких ошибок со старым именем пакета. Итак, ничего не нужно было делать после шага 9. Спасибо!
user3760100
Если вы не получили никаких ошибок, то не переходите после шага 9
Mehroz Munir
1
Ошибка: не удалось выполнить задачу ': app: compileDebugAidl'. > java.io.IOException: com.android.ide.common.process.ProcessException:
Пабло Чегарра
Вместо «Копировать» я просто переместил и, используя эту операцию, у меня не было ошибок после перестройки.
Кавалейро
48
  1. Перейдите в свой файл AndroidManifest.xml.
  2. Поместите курсор в название пакета, как показано ниже. Не выбирайте это, просто поместите это.

    Введите описание изображения здесь

  3. Затем нажмите Shift+, F6вы получите всплывающее окно, как показано ниже, выберите Rename package .

    Введите описание изображения здесь

  4. Введите свое новое имя и выберите Refactor . (Обратите внимание, поскольку мой курсор находится на «что-то», только что-то переименовывается.)

Это сделано.

priwiljay
источник
1
Спасибо, работая над Android Studio 1.5.1. Он автоматически меняет пакет. Нет необходимости создавать новый пакет, перетаскивать файлы и удалять старый пакет. Бла-бла-бла
Шань Ксиши,
@ Принц Джаякумар, твое утверждение «не выбирай просто место» вводит в заблуждение. просто поместив курсор мыши, Shft + F6 не будет работать. Если каретка находится где-то еще в файле, тогда вы должны нажать на название пакета, тогда сработает shft + f6
Prabs
Самый простой способ изменить имя пакета!
Тимо Шук
Отлично сработало на Android Studio 3.5
Эбигейл Лафэй
Полное переименование пакета и идентификатора приложения за минимальное количество шагов! Спасибо.
user1608385
43

Щелкните правой кнопкой мыши пакет на панели проекта .

Выберите Refactor -> Rename из контекстного меню.

GreyBeardedGeek
источник
1
это отлично сработало, мне также пришлось обновить файл AndroidManifest.
физфил
115
Refactor> Rename позволяет мне переименовывать только последнюю часть пакета, например, приложение в com.example.mypackage.app
GilliMonsta
1
Я сделал это так, но теперь он говорит, что класс не существует во время запуска. Как ты переименовал его?
Дхармик
Я использовал главное меню «Рефакторинг» и нажал «Переименовать».
Codebeat
@GilliMonsta: вы можете выбрать папку своего приложения в правой части панели, щелкнув по настройкам, и
снять
25
  1. Откройте файл:

    приложение → манифесты → AndroidManifest.xml

    Введите описание изображения здесь

    Выделите каждую часть имени пакета, которую вы хотите изменить (не выделяйте имя всего пакета), затем:

    • Щелчок правой кнопкой мыши → Refactor → Rename → Rename package
    • введите новое имя и нажмите (Refactor)

    Проделайте эти шаги в каждой части имени пакета.

    Введите описание изображения здесь

  2. Открыть (Gradle Script) >> (build.gradle (Модуль: приложение))

    и обновите applicationId до вашего имени пакета

    Введите описание изображения здесь

  3. Откройте меню (построить) и выберите (Перестроить проект).

alhamdi
источник
Я попытался сделать это, и я наткнулся на препятствие. Я пытаюсь изменить com.example.android.package на свой собственный домен (который заканчивается .net). Я могу изменить «пример» и «пакет», но я не могу изменить «ком». Он также не переименовывает каталоги. Какие-нибудь советы?
Роб Роуз
@RobertRose, у меня есть решение вашей проблемы. Вы все еще работаете над этим?
Оригинальный Android
Я отложил это в сторону и просто пошел вперед и оставил это. Это не производство. Для дальнейшего использования, что вы придумали?
Роб Роуз
1-й не работает, если у меня есть пакет "xxx.mydomain.com")
Джемшит Искендеров
прекрасный. вторые шаги важны и обычно просматриваются в большинстве ответов.
AlleyOOP
16

IntelliJ IDEA имеет опцию «Компактные пустые средние пакеты». Выберите значок параметра на вкладке « Проект » и деактивируйте его.

Смотрите: Как я могу изменить имя пакета верхнего уровня в IntelliJ IDEA?

Матус Ф.
источник
1
Это было полезно. После «Деактивации» этой функции все стало намного понятнее, и я мог удалить пустые пакеты
Крис Невилл,
@ChrisNevill и как ты удалил эти пустые пакеты, пожалуйста?
Беретис
Я думаю, что я просто выбрал их и нажал "Удалить". Я не могу воспроизвести проблему в данный момент, поэтому не могу вспомнить точно.
Крис Невилл
Я согласен, это было действительно полезно. Должен быть включен во все нестандартные ответы, которые я видел по этой теме.
iaindownie
16

Выберите пакет, который будет подвергнут рефакторингу. RefactorMove«Переместить xxx в новый пакет» .

гудок
источник
Это простой метод
ребенок-дроид
4
Не работает, изменил мой пакет с "com.company.oldname" на "com.company.newname.oldname". Видеть? Этот метод не позволяет изменить последний компонент имени (и я пробовал несколько раз).
Жозе Мануэль Абарка Родригес
13

Я видел ответы с наибольшим количеством голосов, но обнаружил, что это немного по-другому, я стараюсь сделать наиболее полный урок.

В Android Studio нажмите на значок шестеренки ( Значок шестерни), а затем выберите параметр:, "Compact Empty Middle Packages"чтобы увидеть разделенные папки в виде дерева.

введение в описание природы

Теперь выберите папку, нажмите правую кнопку, чтобы открыть контекстное меню, выберите, Refactorа затемRename

введение в описание природы

Вам будет рекомендовано провести рефакторинг пакета:

введение в описание природы

Затем в окне отобразятся совпадения внутри проекта, выберите "Do Refactor":

введение в описание природы

Нам не нужно вручную изменять файлы AndroidManifest.xml или build.gradle, рефакторинг пакета сделает эту работу !.

Jorgesys
источник
8

Если имя вашего пакета разделено более чем двумя точками, скажем, com.hello.worldи более того, вы ничего не добавили в com/и com/hello/. Все ваши классы вводятся com/hello/world/, вы можете сделать следующие шаги для рефакторинга имен ваших пакетов в Android Studio или IntelliJ:

  • [ПЕРВЫЙ] Добавьте что-нибудь под ваши каталоги ( com/, com/hello/). Вы можете добиться этого, сначала добавив два файла в пакет com.hello.world, скажем
   com.hello.world.PackageInfo1.java
   com.hello.world.PackageInfo2.java

затем рефакторинг их, переместив их в com и com.hello соответственно. Вы увидите, что com и com.hello сидят там в Project ( Alt+1 или Command+1для ярлыка) и переименовывает каталоги, а рефакторинг ждет там, как вы и ожидали.

  • Рефакторинг, чтобы переименовать один или несколько из этих каталогов для достижения вашей цели. Единственное, что вы должны заметить, это то, что вы должны выбирать каталоги, а не пакеты, когда вас спрашивает диалоговое окно.

  • Если в вашем проекте много классов, вам потребуется время, чтобы дождаться его автоматического сканирования и переименования.

  • Кроме того, вам нужно переименовать имя пакета в AndroidManifest.xml вручную, так что другие имена в этом файле могут иметь преимущество перед префиксом.

  • [ТАКЖЕ] , вам может понадобиться заменить все com.hello.world.Rна новое XXX.XXX.XXX.R( Command+Shift+Rдля краткости)

  • Перестройте и запустите ваш проект, чтобы увидеть, работает ли он. И используйте «Найти в пути», чтобы найти другие бесконтактные имена, которые вы хотите переименовать.

  • Наслаждайся этим.
Dongxu
источник
6

Обязательно отправляйтесь к великому ответу Шехаряра . За этим последовало так много ответов и комментариев, что было бы легко запутаться и сдаться, но не делайте этого . Этот ответ работает .

Короче говоря, вы делаете три вещи :

(1) Отмените выбор Compact Empty Middle Packages.

(2) Refactorзатем Renameкаждый старый узел каталога, выбрав Change Package( не Change Directory ) совпадение с новым именем пакета. (Обязательно сделайте предварительный просмотр изменений.)

(3) Отредактируйте build.gradleфайл и APPLICATION_IDсопоставьте имя нового пакета.

DSlomer64
источник
3
Кто бы ни опроверг это, действительно что-то упустил, так как мой Ответ - это краткий обзор ответа Шехаряра, КОТОРЫЙ ПОЛУЧИЛ 332 ВЫГОВОРА, и все, что я сделал, это упростил его, так как это выглядит настолько сложным (это не так). Нерв некоторых недальновидных, счастливых людей. Хотел бы увидеть причину понижения. Не сомневайся, я этого не увижу.
DSlomer64
ХОРОШО. По прошествии 3,5 лет я, возможно, могу понять, почему отрицательные голоса могли быть поданы, поскольку они могли быть не совсем ясными, поскольку БЫЛО (но немного ослабло!), Но теперь это точно, благодаря двухдневному @Peter Mortensen Прошлое редактирование и мое только сейчас.
DSlomer64
5

Обновленный ответ: май 2015

Хорошо, я боролся с проектами клонирования и переименования в Android Studio, но в конце концов я достиг этого. Вот шаги, чтобы следовать:

  1. Скопируйте папку проекта, переименуйте ее и откройте в Android Studio
  2. Переименовать каталог модуля из проводника
  3. Переименуйте projectName.iml и контент
  4. Переименовать идею / .name
  5. На панели Project нажмите маленький значок шестерни -> снимите флажок «Compact Empty Middle Package»
  6. Рефакторинг каталогов src для нового имени пакета (переименовать пакет, "не переименовывать каталог")
  7. В build.gradle переименуйте идентификатор приложения
  8. модуль переименования settings.gradle

Это оно...

Себастьян Брейт
источник
5

Я нашел более простое решение этой проблемы, которое также изменило сгенерированный импорт, как com.test.testpackagechange.R и заняло около минуты.

Ваш первый шаг - открыть Android Studio и открыть окно замены всех (Mac: cmd + shift + R, Windows, я предполагаю: ctrl + shift + R). Введите имя вашего старого пакета и тот, что ниже вашего нового имени пакета. Нажмите Найти. Это может занять некоторое время, поскольку он также просматривает созданные элементы. Если у него более 1000 просмотров, просто нажмите «Продолжить».

введите описание изображения здесь

После этого нажмите «Заменить все», чтобы заменить старое имя пакета новым.

введите описание изображения здесь

Теперь закройте Android Studio и перейдите в Finder на Mac или Windows Explorer в Windows. Измените имя папки на имя вашего нового пакета, например так:

введите описание изображения здесь

Теперь снова откройте Android Studio. Gradle синхронизируется, и имя вашего пакета должно быть изменено на новое.

Я нашел, что это самый простой и тот, который охватывает все области, такие как сгенерированные файлы.

Кевин ван Миерло
источник
5

Распространенная ошибка, которую можно совершить, заключается в том, что нельзя переименовать структуру пакета, т. Е. Невозможно изменить com.name.android на com.Renamed.android, если попытаться изменить его на уровне com.name.android .

Чтобы получить такое же желаемое изменение, перейдите на один уровень вверх, то есть com.name, и здесь, когда вы будете выполнять рефакторинг, измените его на Renamed . Это будет работать всегда.

Шивананд Т
источник
5

Я нашел другой способ, который работает или дополнительный шаг к некоторым ответам здесь, особенно если вы хотите изменить домен. Работает в Android Studio 1.4. Вот что я сделал:

  1. Откройте Manifest.xml и измените имя пакета на то, что вы хотите.
  2. Откройте ваше приложение build.gradle и измените идентификатор приложения в defaultConfig на то же имя, что и в манифесте, и перестройте проект.
  3. Если проблема не устранена, откройте файл под именем пакета, перейдите к хлебным крошкам пакета (т. Е. Объявите пакет в начале файла) и установите курсор на домен, который вы хотите изменить, и нажмите «Shift + F6», он появится в диалоговом окне с несколькими предупреждениями об использовании нажмите «Переименовать пакеты», а затем «Do Refactor», оно должно переименовать все, включая файлы R.Java.

Так, например, если вы хотите переименовать «com.example.app» в «com.YourDomain.app», откройте файл в пакете, который нужно переименовать, в хлебных крошках пакета установите курсор на «пример» части домена и нажмите Shift+ F6и переименуйте пакет в «YourDomain».

irobotxx
источник
5
  1. Выберите имя пакета в папке Java.
  2. Shift+F6
  3. Измените имя пакета и нажмите OK.

Ваше имя пакета будет изменено из всех файлов Java и файла манифеста. Вы должны вручную изменить имя пакета с build.gradle.

himanshu.tiwari
источник
1
Если Shift + F6 не работает для вас, то вы можете попробовать Alt + Shift + R, чтобы реорганизовать пакет. Остальная часть процедуры такая же
Uncaught Exception
5

Изменить имя пакета


Чтобы переименовать имя пакета, все, что вам нужно сделать, - это зайти в ваш AndroidManifest.xmlфайл, навести курсор мыши перед той частью имени пакета, которую вы хотите изменить.


введите описание изображения здесь


Щелкните правой кнопкой мыши> Refactor> Rename


введите описание изображения здесь


В новом окне нажмите Переименовать пакет


введите описание изображения здесь


Измените имя и нажмите Refactor


введите описание изображения здесь


… И нажмите Do Refactor внизу.


введите описание изображения здесь


Имя вашего пакета обычно имеет формат com.domain.appname, в этом примере мы изменили часть имени приложения, но вы можете сделать те же шаги и для домена.

Выполнено! Вы изменили название своего пакета!

Вишрут Мавани
источник
4

Я попробовал два решения с наибольшим количеством голосов, но нашел некоторые проблемы, хотя оба работают в некоторой степени.

  • Элемент списка: новый метод package-drag-drop оставляет некоторые неизменные и создает некоторые нежелательные эффекты
  • Элемент списка: пакет переименования изменяет только последнюю часть имени пакета

После некоторых экспериментов я обнаружил, что следующий метод хорошо работает для меня.

Если вам просто нужно изменить последнюю часть имени пакета, используйте метод, описанный GreyBeardedGeek, а именно

Щелкните правой кнопкой мыши по пакету на панели «Проект». Выберите Refactor -> Rename из контекстного меню.

Если вам нужно изменить полное имя пакета, выполните следующие действия.

Щелкните правой кнопкой мыши по пакету на панели «Проект». Выберите Refactor -> Move из контекстного меню.

Это создаст новую папку пакета (при необходимости), но сохранит последнюю часть имени вашего пакета, как и раньше. Если вам нужно изменить последнюю часть, сделайте переименование соответствующим образом.

Также обратите внимание, что вам может потребоваться изменить имена пакетов, например, в build.gradle, manifest и / или в любых файлах ресурсов XML, или даже в вашем коде, если он жестко задан. После всего этого делайте Sync / Clean / Rebuild проекта по мере необходимости.

ssgg Google Developer Platform
источник
4

Как переименовать com.example.appв com.android.app:

  1. в пакете com.example.appвыберите пример

  2. Shift + F6

  3. выбирать rename package

  4. переименовать пример на андроид

  5. подтверждения do refactor

Андрей Глухов
источник
4

Щелкните правой кнопкой по пакету -> рефакторинг и измените имя.

Вы также можете изменить его в манифесте. Иногда, если вы меняете имя пакета, но после создания файла .apk он показывает другое имя пакета. В это время проверьте «applicationId» в файле build.gradle .

rajlaxmi_jagdale
источник
4

Я рекомендую использовать Sublime Text (или Notepad ++ ). Замените com.one.lastname -> com.two.newname и com / one / lastname -> com / two / newname в ... \ Projects [MyProject]. и не забудьте переименовать ... \ 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 \ фамилия!

Это все:)

Скриншот

Ярослав Нестеров
источник
3

Я считаю, что вы ищете Refactor> Move. Вы также можете нажать F6.

Вы получите два всплывающих окна. Убедитесь, что вы выбрали переименовать пакет на обоих. После этого вы увидите всплывающее окно с именем нового пакета.

Обратите внимание, что если имя вашего пакета, например, com.example.android.projectname, это позволит вам изменить com.example.android на другое.

Еще одна вещь, это также обновит идентификатор приложения в вашем build.gradle. Просто убедитесь, что флажки «поиск в комментариях и строках» и «поиск текстовых вхождений» установлены для его работы.

phxhawke
источник
3

Быстрый и простой способ:

1- открыть MainActivity.javaили любой доступный файл Java.

В верхней части находится объявление пакета, например:

пакет ком. example.myapp;

выберите часть пакета, которую вы хотите изменить, и нажмите Shift + F6 . Я лично хочу изменить example.

В диалоговом окне предупреждения выберите « Переименовать пакет», а затем вставьте нужное имя пакета.

2- Откройте AndroidManifest.xmlи внутри <manifest>тега измените packageна желаемое имя пакета.

3- откройте build.gradle(Module: app)и измените applicationIdна нужное имя пакета.

Darush
источник
Спасибо. Это довольно просто и понятно.
Ишвор Ханал
3
  1. Выберите опцию введите описание изображения здесь

  2. Снимите флажок с компактных пустых средних пакетов.

  3. Выберите каталог, который вы хотите изменить (я выбрал «crl», показанный на шаге 6).
  4. Shift+F6
  5. Переименовать пакет
  6. Переименование каталога crl в crl1 введите описание изображения здесь

  7. Наконец, нажмите на кнопку Do Refactor, отмеченную на изображении ниже, введите описание изображения здесь введите код здесь

  8. После внесенных изменений введите описание изображения здесь

Шив Буя
источник
3

Пожалуйста, попробуйте следующие шаги:

  1. Нажмите на значок шестеренки и отмените выбор компактного пустого среднего пакета.
  2. Теперь мы видим, что каждая папка пакета разбита на части
  3. Теперь щелкните правой кнопкой мыши на первой папке пакета >>> refactor >>> переименуйте
  4. Теперь будет отображаться предупреждение, но вы продолжаете и нажимаете Rename Package
  5. После этого введите имя вашего домена для имени пакета
  6. Нажмите «Сделать рефакторинг»
  7. Теперь он изменил доменное имя пакета приложения. Теперь измените расширение домена и имя папки приложения в соответствии с вашими требованиями
  8. Теперь откройте build.gradle (Module: app) в скриптах Gradle. Здесь измените идентификатор приложения и нажмите «Синхронизировать сейчас».

******* Наконец это сделано ******

Джозеф Мэтью
источник
3
  1. Нажмите Ctrl+ Shift+R

  2. Замените старую упаковку новой.

  3. Щелкните правой кнопкой мыши на имени пакета.

  4. Refactor> Renameи переименуй в новый

боб
источник
3

ctrl+ Shift+ RВсегда работал для меня. Просто replace allи выбирай All Files.

эмир
источник
это не будет обновлять каталоги, и он не найдет ни одного из ваших классов
Джон Ктеджик
3
  • Первая часть состоит в создании нового пакета под javaпапкой и выбрав затем перетащить все исходные файлы из old packageэтого new package. После этого вам необходимо remaneуказать имя пакета в Android manifestдля названия нового пакета.

  • На шаге 2, вот что вам нужно сделать. Вам нужно изменить старое имя пакета в applicationIdмодуле build.gradleвашей андроид-студии в дополнение к изменению имени пакета в manifest. Таким образом, в итоге, нажмите на build.gradleкоторый ниже "AndroidManifest.xml" и измените значение applicationIdвашего нового имени пакета.

  • Затем на самом верху, под build. cleanваш проект, а затем rebuild. Это должно быть хорошо отсюда.

user3295929
источник
3

Лучший способ - написать новое имя пакета и перетащить его из более старого имени пакета.

Второй способ, если вы нажмете Refactor затем переместите опцию, затем переименуете имя пакета, он переименует имя пакета, а затем перестроит.

В Build.gradle вы должны сделать это вручную, если вы выполните Refactor, то он не будет переименовываться в Build.gradle.

Аджай Кешри
источник