- AwesomeDevelop
- Как изменить имя пакета в Android Studio.
- Как изменить имя пакета приложения для Android
- ОТВЕТЫ
- Ответ 1
- Ответ 2
- Ответ 3
- Ответ 4
- Ответ 5
- Ответ 6
- Ответ 7
- Ответ 8
- Ответ 9
- Ответ 10
- Ответ 11
- Ответ 12
- Ответ 13
- Ответ 14
- Ответ 15
- Ответ 16
- Ответ 17
- Пакет переименования Android Studio
- В Android Studio вы можете сделать это:
AwesomeDevelop
Лёгкая техносферная обстановка в душевой Google 8)
Как изменить имя пакета в Android Studio.
Иногда возникают ситуации, когда по окончанию работы над проектом обнаруживается, что имя пакета, заданного при создании проекта, следует изменить. Подобная ситуация может возникнуть, если в магазине приложений Google Play данное имя уже используется или же, к примеру, вы допустили ошибку при создании проекта и теперь не можете обновить свое приложение. Такая неприятность легко решается если вы использовали в качестве IDE старенький Eclipse,но вот с Android Studio дела обстоят немного хуже.
Попытка сделать рефакторинг имени пакета в студии приводит к тому, что корректно изменится лишь название проекта – com.name. appname . Это происходит потому, что Anndroid Studio объединяет средние имена пакета (по сути папки) в одно название и считает остальную часть принадлежащей конкретному разработчику или компании, а значит является их идентификатором. Но все же изменить средние имена пакета можно и без особых проблем. Первым способом является изменение название папок внутри проекта, но за этим последует рутинное изменение всех связей в проекте, к тому же и так тормозной Gradle начнёт капризничать пуще прежнего и привести его работу в порядок будет крайне сложно. Потому я рекомендую воспользоваться вторым, более простым и быстрым способом полного изменения имени пакета.
Для начала необходимо открепить объединение средних имен в пакете, для этого нужно выбрать параметры отображения структуры проекта, которая находится над самой текстурой и убрать галочку “Compact Empty Middle Packages”.
Когда имена будут откреплены, каждое из имён можно изменить отдельно. Меняем необходимые имена выбрав из контекстного меню Refactor – > Rename или нажав сочетание клавиш Shift+F6. При появлении предупреждения нажимаем кнопку Rename Package.
Источник
Как изменить имя пакета приложения для Android
Мое хранилище ключей повреждено, поэтому Android Market требует от меня переименовать приложение и повторно отправить его. Тем не менее, всякий раз, когда я перехожу к редактированию имен пакетов в манифесте и по всем файлам, это дает мне массу ошибок.
Каков правильный способ изменения имени приложения?
ОТВЕТЫ
Ответ 1
Если вы используете Eclipse, вы можете попробовать эти инструкции с сайта разработчика Android. Они специально предназначены для примера GestureBuilder, но должны быть применимы к любому приложению, насколько я могу судить:
[H] как вы могли бы сделать это в Eclipse:
- Щелкните правой кнопкой мыши имя пакета ( src/com.android.gesture.builder ).
- Выберите «Рефакторинг» > «Переименовать» и изменить имя, например, com.android.gestureNEW.builder .
- Откройте файл манифеста. Внутри , измените имя пакета на com.android.gestureNEW.builder .
- Откройте каждый из двух файлов Activity и сделайте Ctrl-Shift-O, чтобы добавить отсутствующие пакеты импорта, а затем сохраните каждый файл. Запустите приложение GestureBuilder на эмуляторе.
Кроме того, убедитесь, что вы запомнили переименование самого пакета вместе со ссылками на него в файлах. В Eclipse вы можете увидеть имя пакета в окне окна/дерева файла в левой части окна. По моему опыту, Eclipse иногда может быть немного фиктивным и ненадежным с этим (например, оставляя бездомные ссылки на старое имя пакета).
Ответ 2
В Eclipse можно легко изменить имя пакета. Щелкните правой кнопкой мыши на своем проекте, прокрутите вниз до Android-инструментов и нажмите «Переименовать пакет приложений».
Ответ 3
Здесь вы можете сделать это в Eclipse:
- Щелкните правой кнопкой мыши имя пакета ( src/com.android.gesture.builder ).
- Выберите Refactor > Rename и измените имя, например, на com.android.gestureNEW.builder .
- Откройте файл манифеста. Внутри тега измените имя пакета на com.android.gestureNEW.builder .
- Откройте каждый из двух файлов Activity и сделайте Ctrl + Shift + O , чтобы добавить отсутствующие пакеты импорта, а затем сохраните каждый файл.
- Запустите приложение GestureBuilder на эмуляторе.
Обновление супер легкий способ щелкните правой кнопкой мыши по вашему проекту.
Ответ 4
В Android Studio, который, честно говоря, вы должны использовать, измените имя пакета на right-clicking на имя пакета в project structure -> Refactor -> Rename.
Затем он дает возможность переименования каталога или пакета. Выберите пакет. Справочник должен следовать примеру. Введите новое имя пакета и нажмите «Refactor». Он изменит весь импорт и удалит избыточный импорт для вас. Вы даже можете исправить это для вас в комментариях и строках и т.д.
Наконец,, измените имя пакета в AndroidManifest.xml по направлению вверх. В противном случае вы получите ошибки повсюду, жалуясь на R.whatever.
Другое очень полезное решение
Сначала создайте новый пакет с нужным именем by right clicking on the java folder → new → package.`
Затем выберите и перетащите все ваши классы в новый пакет. AndroidStudio будет переопределять имя пакета везде.
После этого: в приложении build.gradle добавьте/отредактируйте applicationId с новым. т.е. ( com.a.bc в моем случае):
Оригинальная публикация и комментарии здесь
Ответ 5
Измените имя пакета и названия активности в AndroidManifext.xml и в любом другом месте в XML файлах (пользовательские имена и т.д.)
Обновить оператор импорта пакета во всех исходных файлах
Переименуйте все папки в соответствии с именем пакета. Расположение папок:
а. bin/классы
б. ген
с. ЦСИ
Обновите имя проекта в файле build.xml(или ваше имя apk не изменится)
Удалите все файлы .class в bin/classes/com/example/myapp/(если вы пропустите этот шаг, файлы не будут перезаписаны во время сборки, а dex даст кучу проблем с обработкой «имя класса» не соответствуют пути «
Удалить gen/com/example/myapp/BuildConfig.java(я не знаю, почему удаление BuildConfig.class на шаге 3a не вызывало dex для обновления пути к этому, но до тех пор, пока я не удалю BuildConfig. java он продолжал воссоздавать gen/com/oldapp_example/oldapp и помещать там BuildConfig.class. Я не знаю, почему у R.java из того же места нет этой проблемы. Я подозреваю, что BuildConfig.java автоматически сгенерирован в pre -compile, но R.java нет)
Вышеуказанные 6 шагов — это то, что я сделал, чтобы изменить имя моего пакета и получить успешную * сборку. Может быть лучший способ обработать шаги 5 и 6 через команды dex для обновления путей или, возможно, путем редактирования classes.dex.d в корневой директории проекта. Я не знаком с dex или если это нормально для удаления/редактирования classes.dex.d, поэтому я пошел с методом удаления файлов .class, которые, как я знаю, будут восстановлены в сборке. Затем я проверил classes.dex.d, чтобы узнать, что еще нужно обновить.
* В моей сборке нет ошибок или предупреждений. EXCEPT dex и apkbuilder устанавливают состояние «Найденный удаленный целевой файл» без каких-либо особенностей того, что этот файл. Не уверен, что это отображается в каждой сборке, если она была там до того, как я испортился с моим именем пакета, или если это результат моих удалений, и мне не хватает шага.
Ответ 6
Выполните следующие действия: —
- Щелкните правой кнопкой мыши проект.
- Перейдите в Android-инструменты.
- Нажмите «Переименовать пакет приложений».
- Измените имя пакета приложения.
DONE
Ответ 7
Самый быстрый способ сделать это в Android Studio 1.3:
- Измените имя пакета в manifest
- Перейдите в Module Settings[F4]-> Flavors , в Application Id введите одно и то же имя.
- Создайте новый пакет с таким именем: [right-click-> new-> package]
- Выберите все java файлы вашего проекта, а затем продолжите [Right-click-> Refactor-> Move->
P.S. Если вы не будете следовать этому заказу, вы можете в конечном итоге изменить все java файлы один за другим с новыми импортерами и кучей ошибок времени компиляции, поэтому порядок очень важен.
Ответ 8
Изменение названия пакета — боль в заднице. Похоже, что разные методы работают для разных людей. Мое решение быстро и безошибочно. Похоже, что не требуется очистка или сброс затмения.
- Щелкните правой кнопкой мыши имя пакета, затем Refractor > Rename.
- Щелкните правой кнопкой мыши название проекта Android. > Переименуйте пакет приложений.
- Вручную установите имена пакетов в манифесте, которые не были изменены предыдущими шагами.
Ответ 9
- Fist изменить имя пакета в файле манифеста
- Re-factor > Переименуйте имя пакета в папку src и поставьте галочку для rename subpackages
- Это все, что вы сделали.
Ответ 10
У Бернштейна есть метод, используйте инструмент Eclipse, «Переименуйте пакет приложений», вам, возможно, придется выполнить некоторую очистку даже после факта. Кроме того, Eclipse иногда теряет смысл, когда вы вносите изменения в проект. Возможно, вам придется использовать инструмент «Чистый проект» (в меню «Проект».) Если это не сработает, возможно, вам придется закрыть и перезапустить Eclipse. Voo-doo, но Eclipse может быть таким.
Ответ 11
Я нашел самое легкое решение: Regexxer заменить «com.package.name» на «com.newpackage.name», а затем правильно переименуйте каталоги. Супер легкий, супер быстрый.
Ответ 12
Существует также другое решение для пользователей без Eclipse, просто измените атрибут package в в AndroidManifest.xml, заменив прежнее имя пакета, используемое новым. Примечание.. Вы также должны вручную настроить все связанные операторы импорта и связанные с ними папки в своем проекте.
Ответ 13
- Открыть AndroidManifest.xml
- Изменить пакет = «NEW NAME» в теге манифеста.
Ответ 14
Щелкните правой кнопкой мыши по проекту > Инструменты Android > Переименуйте пакет приложений
Перейдите в src и щелкните правой кнопкой мыши на основном пакете > Рефакторинг > Переименовать
Перейдите в файл манифеста и измените имя своего пакета.
Ответ 15
Я просто потерял несколько часов, пытаясь найти все решения. Я был уверен, проблема в моем коде — запуск apk, но некоторые ошибки при работе с разными классами и действиями.
Только способ работы с моим проектом:
- переименуйте его — файл/переименовать и отметьте все флажки
- проверьте, не переименованные места, у меня было в одном из старых старое имя все еще в инструментах: context = «..
- создать новое рабочее пространство
- импортировать проект в новое рабочее пространство
Для меня это работает, только решение.
Ответ 16
В Android Studio 1.2.2 Скажем, если вы хотите изменить com.example.myapp на org.mydomain.mynewapp Вы можете выполнить шаги в каждом из каталогов, как показано на следующем снимке экрана. Он предоставит вам возможность предварительного просмотра, чтобы вы могли предварительно просмотреть все изменения.
Перейдите к Refactor -> Rename и укажите свое новое имя. Вы должны сделать это для каждой из папок, например, для com, example и myapp. Он автоматически обновит импорт, чтобы вам не пришлось беспокоиться об этом.
Также обновите файл build.gradle , который не обновляется автоматически.
После этого он попросит sync сделать это. Тогда все будет хорошо. После этого я могу загрузить APK в Google Store. Убедитесь, что вы подписали приложение, чтобы загрузить его в магазин.
Ответ 17
Итак, использование IntelliJ с плагином Android (Studio) было следующим: я пошел в AndroidManifest.xml сверху и изменил имя пакета, щелкнув правой кнопкой мыши → Refactor → rename. У нашего имени пакета было четыре части a.b.c.d , а новая — только a.b.c . Поэтому я переименовал первые три. Затем я отправился в каталог сгенерированных источников ( app\build\generated\source\r\development\debug\a\b\c\d ), щелкнул правой кнопкой мыши R класс и Refactor- > Move [d] до одного пакета выше. То же самое с BuildConfig в app\build\generated\source\buildConfig\development\debug\a\b\c\d .
Используя Refactor- > Move, IntelliJ обновляет все ссылки на BuildConfig и R .
Источник
Пакет переименования Android Studio
Как вы переименовываете пакеты в новую IDE Android Studio, основанную на intelijj?
Есть ли какой-либо автоматический рефакторинг?
Я хочу сделать массовый рефакторинг, но я не знаю, как это сделать. Я работал 2 года с Eclipse и в Eclipse это один клик операции.
В Android Studio вы можете сделать это:
Например, если вы хотите изменить com.example.app в my.awesome.game , тогда:
На панели «Проект» щелкните значок маленькой шестерни ( )
Снимите флажок / Отменить выбор Compact Empty Middle Packages
Теперь ваш каталог пакетов будет разбит на отдельные каталоги
Индивидуально выберите каждый каталог, который вы хотите переименовать, и:
- Щелкните его правой кнопкой мыши
- Выберите Refactor
- Нажмите « Rename
- В диалоговом окне «Всплывающее окно» нажмите « Rename Package вместо «Переименовать каталог»
- Введите новое имя и нажмите Refactor
- Нажмите Do Refactor внизу
- Разрешите минуту, чтобы Android Studio обновила все изменения
- Примечание. При переименовании com в Android Studio он может дать предупреждение.В этом случае выберите «Переименовать все»
- Теперь откройте свой файл сборки Gradle ( build.gradle – обычно app или mobile ). Обновите applicationId к новому имени пакета и Sync Gradle, если оно еще не обновлено автоматически:
- Готово! В любом случае, Android Studio необходимо сделать этот процесс немного проще.
Еще один хороший метод: сначала создайте новый пакет с нужным именем, щелкнув правой кнопкой мыши по папке java -> new ->.
Затем выберите и перетащите все классы в новый пакет. AndroidStudio будет реорганизовывать имя пакета везде.
Наконец, удалите старый пакет.
Еще одна важная вещь
Если вы используете этот метод, вы должны вручную изменить файл манифеста и градиента Android в новый пакет.
Это можно сделать очень легко за один шаг. Вам не нужно касаться AndroidManifest. Вместо этого выполните следующие действия:
- Щелкните правой кнопкой мыши корневую папку вашего проекта.
- Нажмите «Открыть настройки модуля».
- Перейдите на вкладку Flavors.
- Измените идентификатор приложения на любое имя пакета. Нажмите OK.
Щелкните правой кнопкой мыши пакет на панели проекта .
Выберите «Рефакторинг» -> «Переименовать» в контекстном меню.
- Перейдите на ваш AndroidManifest.xml.
- Поместите курсор в имя пакета, как показано ниже, не выбирайте его, просто поместите его.
- Затем нажмите shift+F6 вы получите всплывающее окно, как показано ниже, выберите « Переименовать пакет» .
- Введите новое имя и выберите « Рефакторинг» . (Обратите внимание, поскольку мой курсор находится на «что-то», только что-то переименовано.)
Подход, используемый мной для переименования имени пакета, прост:
Шаг 1. Выберите вариант «Проект» в меню слева от Android Studio.
Шаг 2 : Щелкните правой кнопкой мыши на java и добавьте новый пакет и установите желаемое имя пакета
Шаг 3 : Введите новое имя пакета.
Шаг 4. Скопируйте все файлы из старого пакета и вставьте в новый пакет.
Шаг 5 : Переименуйте имя пакета в файле манифеста
Шаг 6 : Переименуйте имя пакета в файле build.gradle.
Шаг 7 : Затем щелкните правой кнопкой мыши старый пакет и удалите его со всеми его данными, а также удалите этот каталог
Шаг 8 : Затем перестройте свой проект
Шаг 9 : Затем вы найдете некоторые ошибки старого import packagename в своем проекте. Выберите старое имя пакета в любом файле и нажмите CTRL + Shift + R и введите новое имя пакета в поле replace, затем нажмите find
Шаг 10. Затем появится всплывающее окно, как показано ниже, и выберите из него все файлы.
Шаг 11 : снова перестройте свой проект, бинго изменилось ваше имя пакета проекта 🙂
Приложение >> манифестация >> AndroidManifest.xml
Выделите каждую часть имени пакета, которую вы хотите изменить (не выделяйте полное имя пакета):
- Щелчок правой кнопкой мыши >> Рефакторинг >> Переименование >> Переименование пакета
- Введите новое имя и нажмите (Refactor)
Сделайте эти шаги в каждой части имени пакета
Open (Gradle Script) >> (build.gradle (Modul: приложение))
И обновить applicationId до вашего имени пакета
Откройте меню (сборка) и выберите (перестроить проект)
У Intelli J есть опция «Компактные пустые средние пакеты». Выберите значок опции на вкладке «Проект» и деактивируйте ее.
См.: Как я могу изменить имя пакета верхнего уровня в IntelliJ
Выберите пакет будет реорганизован, refactor-> move -> «переместить xxx в новый пакет»
Если ваше имя пакета разделено более чем на две точки, скажем, com.hello.world и, кроме того, вы не добавили ничего в com/ и com/hello/ . Все ваши классы помещают в com/hello/world/ , вы можете сделать следующие шаги для реорганизации имен ваших пакетов в Android Studio или IntelliJ:
- [FIRST] Добавить что-то под вашими каталогами ( com/ , com/hello/ ). Вы можете достичь этого, сначала добавив два файла в пакет com.hello.world, скажем,
Затем реорганизуйте их, переместив их в com и com.hello соответственно. Вы увидите com и com.hello, сидящие там в проекте ( Alt+1 или Command+1 для ярлыка) и переименование каталогов рефакторинг ждет там, как вы ожидали.
Refactor, чтобы переименовать один или несколько из этих каталогов, чтобы достичь вашей цели. Единственное, что вы должны заметить здесь, – это выбрать каталоги, а не пакеты, когда вас спросит диалог.
Если у вас есть много классов в вашем проекте, вам потребуется некоторое время, чтобы дождаться его автоматического сканирования и переименования.
Кроме того, вы должны переименовать имя пакета внутри AndroidManifest.xml вручную, я думаю, что другие имена в этом файле могут принести пользу префиксу.
[ALSO] , вам может понадобиться заменить весь com.hello.world.R на новый XXX.XXX.XXX.R ( Command+Shift+R для краткости)
Перестройте и запустите проект, чтобы увидеть, работает ли он. И используйте «Найти в пути», чтобы найти другие имена без касания, которые вы хотите переименовать.
Я видел верхние голосовые ответы, но я нашел немного разные, чтобы сделать это, я стараюсь сделать самый полный учебник.
Из Android Studio щелкните значок шестеренки ( ), А затем выберите опцию «Compact Empty Middle Packages» , чтобы увидеть папки, разделенные в виде дерева.
Теперь выберите папку, нажмите правую кнопку, чтобы открыть контекстное меню, выберите « Refactor а затем « Rename
Вам будет предложено реорганизовать пакет:
Затем в окне отобразятся совпадения внутри объекта, выберите «Do Refactor» :
Нам не нужно вручную менять файлы AndroidManifest.xml или build.gradle, рефакторинг пакета будет выполнять эту работу !.
Обновленный ответ: май 2015 г.
ОК. Я боролся с клонированием и переименованием проектов в Android Studio, но, наконец, я достиг этого. Ниже приведены следующие шаги:
- Скопируйте папку проекта, переименуйте ее и откройте ее с помощью Android Studio
- Переименуйте каталог модуля из проводника
- Переименуйте projectName.iml и содержимое
- Переименование идеи / .name
- На панели «Проект» щелкните значок маленькой шестерни -> снимите флажок «Компактный пустой средний пакет»,
- Рефакторические каталоги src для нового имени пакета (пакет переименования, «не переименовать каталог»)
- В build.gradle переименуйте идентификатор приложения
- Settings.gradle переименовать модуль
Я попробовал два решения с высоким рейтингом, но нашел некоторые проблемы, хотя оба они работают в некоторой степени.
- Элемент списка: новый метод перетаскивания пакетов оставляет неизменным и создает некоторые нежелательные эффекты
- Элемент списка: пакет переименования изменяет только последнюю часть имени пакета
После некоторых экспериментов я нашел, что следующий метод работает хорошо для меня.
Если вам просто нужно изменить последнюю часть имени пакета, используйте метод, описанный GreyBeardedGeek, а именно
Щелкните правой кнопкой мыши пакет на панели «Проект». Выберите «Рефакторинг» -> «Переименовать» из контекстного меню
Если вам нужно изменить полное имя пакета, сделайте следующее.
Щелкните правой кнопкой мыши пакет на панели «Проект». Выберите «Рефакторинг» -> «Переместить» из контекстного меню
Это создаст новую папку пакета (при необходимости), но сохранит последнюю часть вашего имени пакета, как и раньше. Если вам нужно изменить последнюю часть, выполните переименование соответственно.
Также обратите внимание, что вам может потребоваться изменить имена пакетов, например, build.gradle, manifest и / или любые файлы ресурсов xml или даже в вашем коде, если они жестко закодированы. После этого при необходимости выполните проект Sync / Clean / Rebuild.
Общей ошибкой, которую можно сделать, является то, что нельзя переименовать структуру пакета, т. Е. Невозможно изменить com.name.android на com.Renamed.android при попытке изменить на уровне com.name.android.
Чтобы иметь одинаковые желаемые изменения, перейдите на один уровень вверх, т.е. com.name, и здесь, когда вы реорганизуете его, переименуйте. Это будет работать всегда
Щелкните правой кнопкой мыши по пакету -> рефакторинг и измените имя. Вы также можете изменить его в манифесте. Иногда, если u изменяет имя пакета, но после создания apk он показывает другое имя пакета в это время, проверьте «applicationId» в файле build.gradle.
Я нашел другой способ, который работает, или дополнительный шаг к некоторым из ответов здесь, особенно если вы хотите также изменить домен. Работает в android studio 1.4. Это то, что я сделал:
- Откройте Manifest.xml и измените имя пакета на то, что вы хотите.
- Откройте файл build.gradle приложения и измените Идентификатор приложения в defaultConfig на то же имя, что и в манифесте, и перестройте проект.
- Если все еще проблема, откройте файл под именем пакета, перейдите в пакет патчи (т.е. объявление пакета в главном файле) и установите курсор в домен, который хотите изменить, и нажмите «Shift + F6», он выйдет с Диалог с предупреждениями о множественном использовании, нажмите «Переименовать пакеты», а затем нажмите «Do Refactor», он должен переименовать все, включая файлы R.Java.
Например, если вы хотите переименовать «com.example.app» в «com.YourDomain.app», откройте файл под пакетом, который нужно переименовать, в пакете панировочных сундуков установите курсор в «примерную» часть домена И нажмите Shift + F6 и переименуйте пакет в «YourDomain».
Надеюсь это поможет 🙂
Первая часть состоит из создания нового пакета в папке «java» и выбора, а затем перетаскивания всех исходных файлов из старого пакета в новый пакет. После этого вам нужно переименовать имя пакета в манифесте android для имени нового пакета.
На шаге 2 вот что вам нужно сделать. Вам нужно изменить старое имя пакета в «applicationId» в модуле «build.gradle» в вашей студии Android в дополнение к изменению имени пакета в манифесте. Итак, в общем, нажмите «build.gradle», который находится ниже «AndroidManifest.xml» и измените значение «applicationId» на новое имя пакета.
Затем, на самом верху, под «строить». Очистите свой проект, а затем перестройте. Здесь должно быть хорошо.
Пакеты служат двум целям. Один из них – уникальное определение вашего приложения в Google Play Store. Другой – это имя пакета для класса R.java, который генерируется при создании вашего проекта. Вы можете рассматривать первую цель как внешний пакет, а второй – как внутренний пакет. Предполагая, что вы хотите изменить внешний пакет, чтобы вы могли идентифицировать его в магазине Play, есть удобный способ сделать это.
В Android Studio выберите «Файл»> «Структура проекта»> «Выберите модуль вашего приложения». Нажмите вкладку «Ароматизаторы»> изменить идентификатор приложения. Теперь, когда вы создадите свой проект, ваш APK и манифест будут использовать это новое имя пакета.
Это я считаю, что вы ищете Refactor> Move. Вы также можете нажать F6.
Вы получите два всплывающих окна. Убедитесь, что вы выбрали переименование пакета на обоих. После этого вы получите всплывающее окно для размещения нового имени пакета.
Обратите внимание, что если ваше имя пакета, например, com.example.android.projectname, то это позволит вам изменить com.example.android на что-то еще.
Еще одна вещь, это обновит applicationId в вашем build.gradle. Просто убедитесь, что флажки для «поиска в комментариях и строках» и «поиск текстовых вхождений» проверяются на то, чтобы они работали.
Лучший способ написать новое имя пакета и перетащить его из старого имени пакета. Второй способ, если вы нажмете Refactor, затем переместите опцию, а затем переименуйте имя пакета, он переименует имя пакета, а затем перестроит.
В Build.gradle вам нужно сделать вручную, если u Refactor, то он не будет переименован в Build.gradle.
Не забудьте вернуться к Ответу Шехарьяра, который начинается в In Android Studio, you can do this: потому что это БОЛЬШОЕ. Есть так много ответов и комментариев, которые следуют за ним, что было бы легко запутаться и отказаться, но НЕ. Это ответ РАБОТАЕТ.
Короче говоря, вы делаете ТРЕТЬЯ ВЕЩИ:
Снимите флажок Compact Empty Middle Packages .
Refactor Rename каждый старый узел каталогов, выбрав CHANGE PACKAGE ( не каталог), чтобы соответствовать новому имени пакета. (Обязательно сделайте предварительный просмотр изменений.)
Измените файл build.gradle и build.gradle APPLICATION_ID соответствие с новым именем пакета.
Быстрый и простой способ:
1- открыть MainActivity.java или любой доступный Java-файл.
В верхней части находится декларация пакета, такая как:
Выберите часть пакета, которую вы хотите изменить, и нажмите Shift + F6 . Я лично хочу изменить example .
В диалоговом окне предупреждения выберите « Переименовать пакет», а затем вставьте нужное имя пакета.
2- Открыть AndroidManifest.xml и внутри изменить package на нужное имя пакета.
3- open build.gradle(Module: app) и измените applicationId на желаемое имя пакета.
- Выберите имя пакета в папке Java.
- Shift + F6
- Измените имя пакета и нажмите OK.
Имя вашего пакета будет изменено со всех java-файлов и файла манифеста. Вы должны вручную изменить имя пакета из build.gradle
Я нашел способ упростить решение этой проблемы, которая также изменила сгенерированный импорт, такой как 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 будет синхронизироваться, и ваше имя пакета должно быть изменено на новое.
Я нашел, что это самый простой и тот, который охватывает все области, такие как сгенерированные файлы.
Я рекомендую использовать 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 \ lastname! Это все:)
Это очень хорошо для меня, даже для изменения вхождений во всех соответствующих модулях для имен папок, которые я хочу изменить в пакете, но для меня он отлично работает, только если я выполняю следующие шаги:
- A – Если вы хотите изменить имя корневой папки (другими словами, имя папки, которое обычно используется в пакете, чтобы содержать основное действие), вы можете сделать это до или после следующих шагов (от B до C) Выхода из «Android Studio» и вручную переименуйте эту корневую папку. Нажмите «Импорт проекта …», а затем на новое имя вашего проекта (этот процесс импорта автоматически перенастроит файлы «Gradle» с файлами проекта).
- B – до следующего шага C не забудьте вручную изменить имена папок, которые вы хотите изменить в пакете, изменив их в следующих трех файлах: «AndroidManifest.xml», «MainActivity.java» (или имя, которое вы В конечном итоге выберите для своей первой активности) и файл build.gradle (Module: app).
- C – Выполните описанные выше шаги с 1 по 6 («В панели« Проект »щелкните значок маленькой шестерни …») ->https://stackoverflow.com/a/29092698/2001610
- D – Только если вы хотите изменить имя корневой папки сейчас, вы можете следить за процессом «A», как описано выше.
После того, как вы выполните один из этих методов, чтобы переименовать пакет, вы можете увидеть ошибки.
Если / если ваш R.java не создается правильно, вы получите много ошибок в своем проекте, говоря error: cannot find symbol class R а также error: package R does not exist .
Не забудьте проверить свой манифест приложения xml. Имя пакета манифеста должно совпадать с фактическим именем пакета. Кажется, что R.java генерируется из манифеста приложения и может вызвать эти ошибки, если есть несоответствие.
Не забудьте проверить соответствие атрибутов package в вашем
Выберите опцию
Снимите флажок Compact Empty Middle Packages.
Переименование каталога crl в crl1
Наконец нажмите кнопку Do Refactor, помеченную на изображении ниже введите код сюда
После внесенных изменений
Дополнительный ответ через 3 года, конечно, если какой-либо предыдущий не работает для вас, потому что «что-то».
- Перейдите к пути к проекту> где вы находите java-файлы и пакет
- Создавайте новые папки, например, com> super_package> действия
- Android Studio обновит структуру проекта
- Переместить все файлы Java в новые папки
- Удаление старых папок
- Правка> Найти> Заменить в пути:
- Изменить имя старого пакета на новый
- Изменять также в манифесте и строить град
Если ваш пакет начинается с mypackageold.something.test вы не можете изменить его на mypackagenew.somethingnew.testnew .
В этом случае, если я следую вышеприведенным результатам ответа, будет mypackageold.somethingnew.testnew .
Только если ваш пакет начинается с com. to New package, выше принятый ответ будет работать.
Поэтому, если вы хотите изменить пакет с уровня корня
Источник