Скопируйте существующий проект с новым именем в Android Studio
Я хотел бы скопировать свой проект Android и создать новый проект из тех же файлов с другим именем. Цель этого состоит в том, чтобы у меня была вторая версия моего приложения, которая поддерживается в магазине приложений.
Я нашел этот ответ здесь:
Android - скопируйте существующий проект с новым именем
Но это для Eclipse. Как я могу сделать это в Android Studio?
Ответы
Ответ 1
Шаги в указанной вами ссылке также должны работать в Android Studio. Просто создайте копию (используя файловый менеджер) всей папки модуля и дайте ей новое имя. Теперь откройте его и используйте Refactor -> Rename
(щелкните правой кнопкой мыши элемент, который вы хотите переименовать), чтобы переименовать ваш модуль и пакет.
Подробнее о рефакторинге в IntelliJ/Android Studio см. .
Ответ 2
Если вы используете Gradle - не забудьте изменить атрибут applicationId в файле app/build.gradle.
Ответ 3
Как указало free3dom, вот что нужно сделать:
- Создать копию с помощью файлового менеджера
- Вручную отредактируйте файл приложения
build.gradle
чтобы изменить имя пакета (вы можете использовать файловый менеджер). - Вручную отредактируйте
AndroidManifest.xml
чтобы изменить имя пакета. - Запустите
gradle sync
. - Откройте проект в Android Studio и выполните рефакторинг имени пакета.
- Снова запустите синхронизацию gradle.
Это, кажется, работает без каких-либо проблем.
Ответ 4
Если вы используете новейшую версию Android Studio, вы можете помочь ей в этом.
Примечание. Я проверял это только в Android Studio 3.0.
Процедура выглядит следующим образом:
-
В представлении проекта (вместе со снимками и структурой в левой части экрана) выберите "Проект" вместо Android.
Название вашего проекта будет вершиной дерева (наряду с внешними библиотеками).
Выберите ваш проект, затем перейдите в Refactor → Copy...
Android Studio спросит у вас новое имя и место, куда вы хотите скопировать проект. Обеспечить то же самое.
-
После завершения копирования откройте новый проект в Android Studio.
Пакеты все еще будут под старым именем проекта.
Это пакеты классов Java, идентификатор приложения и все остальное, что было сгенерировано с использованием старого имени пакета.
Нам нужно это изменить.
В представлении проекта выберите Android.
Откройте подкаталог java и выберите основной пакет.
Затем щелкните правой кнопкой мыши на нем и перейдите в Refactor
затем Rename
.
Android Studio выдаст вам предупреждение о том, что несколько каталогов соответствуют пакету, который вы собираетесь реорганизовать.
Нажмите на Rename package
а не Rename directory
.
После этого шага ваш проект полностью переходит под новым именем.
- Откройте файл res/values /strings.xml и измените имя проекта.
- Не забудьте изменить идентификатор приложения в "Gradle Build Module: app".
- Последний шаг - очистить и перестроить проект, иначе при попытке запустить ваш проект Android Studio скажет вам, что не может установить APK (если вы запускали предыдущий проект).
Итак, Build → Clean project
затем Build → Rebuild project
.
Теперь вы можете запустить свой новый клонированный проект.
Ответ 5
Цель этого заключается в том, что у меня может быть вторая версия моего приложения, которое поддерживается рекламой в магазине приложений.
В настоящее время лучший способ сделать это - без копирования проекта.
Вы можете сделать это с использованием различных вкусов в вашем файле build.gradle
.
productFlavors {
flavor1 {
applicationId = "com.example.my.pkg.flavor1"
}
flavorAdSUpport {
applicationId = "com.example.my.pkg.flavor2"
}
}
Таким образом, у вас есть только копия файлов, и вы можете легко справиться с этой разницей.
Ответ 6
Я следую за этими шагами, и это работало до сих пор:
- Скопируйте и вставьте папку, как раньше.
- Откройте Android Studio (v3.0.1).
- Выберите Открыть существующий проект.
- Закройте сообщение, которое появится с заголовком: "Импортировать проекты Gradle".
- В левой части на вкладке Android перейдите: app → java → выберите первую папку (папку вашего проекта)
- Refactor => Rename... (Shift + F6)
- Переименовать пакет, выберите оба варианта - введите имя новой папки строчными буквами.
- Сделать рефакторинг
- Выберите: Синхронизировать проект с файлами Gradle на панели инструментов.
- Build => Чистый проект
- Перейдите в app → res → values → strings.xml и измените имя приложения во 2-й строке.
Ответ 7
Это комбинация ответа nt.bas и шага 9 ответа Civic с наглядными примерами, потому что мне потребовалось некоторое время, чтобы выяснить, что было задумано, поскольку я новичок в Android Studio. Протестировано в Android Studio 3.2.1.
-
Откройте проект, который вы хотите клонировать в Android Studio. (В этом примере старое имя проекта было test5
а новое имя проекта было test6
)
-
На левой панели обзора файлов нажмите: Project (где в данный момент может быть указано android).
![fig0]()
- Щелкните правой кнопкой мыши проект в области проводника и выберите "Рефакторинг"> "Клон".
![fig1]()
- Измените "Новое имя" на новое имя проекта и нажмите "ОК".
![fig2]()
- Файл> открыть> Новое окно> Выбрать новый проект> Открыть в новом окне проекта. В новом окне дождитесь завершения нижней строки Android-студии/скажет: "Gradle Sync Finished".
![16]()
![17]()
![14]()
- В панели обзора файлов и правой кнопкой мыши щелкните (RMB) на: app.java/<имя вашего старого проекта (не тестовое, не androidTest, просто пустое)>
![fig8]()
- Введите новое имя вашего пакета и выберите обе галочки, нажмите рефакторинг.
![fig10]()
- В нижней левой панели нажмите "Сделать рефакторинг".
![fig12]()
-
Откройте app/res/values /strings.xml и измените имя старого проекта (например, test5) на новое имя проекта в строке:
<string name="app_name">test5</string>
![fig3]()
-
Откройте Gradle scripts/build.gradle (Модуль: приложение) и измените строку на ту же строку с вашим новым именем проекта:% fig4
applicationId "com.example.a.test5"
![fig4]()
- Желтая линия появится в верхней части панели кода, запрашивая синхронизацию. Нажмите "синхронизировать сейчас".
![fig5]()
- в верхней панели нажмите build> Clean project.
![fig13]()
- Если в левом нижнем углу написано "Gradle build complete", нажмите "Build> Rebuild project".
![fig14]()
![fig15]()
- Теперь вы сможете снова скомпилировать и запустить свой проект (если он сработал в первую очередь).
Ответ 8
При рефакторинге имени пакета в Android Studio может потребоваться щелкнуть маленькое зубчатое колесо справа от пакета /android/project/etc - navigator и снять флажок "компактные пустые средние пакеты", чтобы увидеть каждую часть имени пакета. как собственный каталог. Затем для отдельных каталогов сделать рефакторинг.
Ответ 9
Приложение к учебнику по практическим курсам Android Developer Fundamentals Course содержит шаги по копированию и переименованию существующего проекта:
https://google-developer-training.gitbooks.io/android-developer-fundamentals-course-practicals/content/en/appendix_utilities.html#copy_project
Ответ 10
Я использую Android 3.3 и вот как это работает для меня:
1 - Выберите вид проекта
2 - Щелкните правой кнопкой мыши имя проекта, которое находится в корне проекта, и выберите опцию refactor → copy
, вам будет предложено в окне выбрать новое имя.
3 - После шага 2 Android создаст для вас новый проект, вы должны открыть этот новый проект с новым именем
4 - Измените имя приложения в "string.xml", оно в "app/res/values /string.xml"
Теперь у вас есть тот же проект с новым именем. Теперь вы можете изменить название пакета, это описано в следующих шагах
(необязательно) Для изменения названия основного пакета
5 - перейдите в "app/java", там будет три папки с одинаковыми именами, основная, (androidTest)
и (test)
, щелкните правой кнопкой мыши на главной и выберите format → rename
, вам будет предложено с предупреждением о том, что этому каталогу соответствуют несколько каталогов, затем нажмите "Переименовать пакет". Выберите новое имя и нажмите на рефакторинг. Теперь, под представлением кода, здесь будет предварительный просмотр рефакторинга, нажмите "Do refactor"
6 - Перейдите к опции "построить", нажмите "Очистить проект", затем "Перестроить проект".
7 - Теперь закройте проект и снова откройте его.
Ответ 11
Перейдите в исходную папку, где находится ваш проект.
- Скопируйте проект и прошлое и измените название.
- Откройте Android Studio и обновите.
- Перейти к
->Settings.gradle
. - Включить
':your new project name '
Ответ 12
При копировании проекта вам также потребуется удалить исходные промежуточные файлы промежуточной сборки (someActivity $4.class) из файла C:...\AndroidStudioProjects (имя_проекта)\app\build\intermediates\classes\release... каталоги.
В противном случае у вас почти наверняка будут сбои сборки для нового проекта
если вы пытаетесь скомпилировать скопированный проект. Рефакторинг не решит этого.
Ответ 13
Цитата из nt.bas ответа:
Если вы используете новейшую версию Android Studio, вы можете помочь ей в этом.
Примечание. Я проверял это только в Android Studio 3.0.
Процедура выглядит следующим образом:
-
В представлении проекта (вместе со снимками и структурой в левой части экрана) выберите "Проект" вместо Android.
Название вашего проекта будет вершиной дерева (наряду с внешними библиотеками).
Выберите ваш проект, затем перейдите в Refactor → Copy...
Android Studio спросит у вас новое имя и место, куда вы хотите скопировать проект. Обеспечить то же самое.
-
После завершения копирования откройте новый проект в Android Studio.
Пакеты все еще будут под старым именем проекта.
Это пакеты классов Java, идентификатор приложения и все остальное, что было сгенерировано с использованием старого имени пакета.
Нам нужно это изменить.
В представлении проекта выберите Android.
Откройте подкаталог java и выберите основной пакет.
Затем щелкните правой кнопкой мыши на нем и перейдите в Refactor
затем Rename
.
Android Studio выдаст вам предупреждение о том, что несколько каталогов соответствуют пакету, который вы собираетесь реорганизовать.
Нажмите на Rename package
а не Rename directory
.
После этого шага ваш проект полностью переходит под новым именем.
- Откройте файл res/values /strings.xml и измените имя проекта.
- Последний шаг - очистить и перестроить проект, иначе при попытке запустить ваш проект Android Studio скажет вам, что не может установить APK (если вы запускали предыдущий проект).
Итак, Build → Clean project
затем Build → Rebuild project
.
До этого момента вы переименовываете только название своего проекта. Чтобы переименовать название упаковки, необходимо следовать ответу gnyrfta, который был описан как:
При рефакторинге имени пакета в Android Studio может потребоваться щелкнуть маленькое зубчатое колесо справа от пакета /android/project/etc - navigator и снять флажок "компактные пустые средние пакеты", чтобы увидеть каждую часть имени пакета. как собственный каталог. Затем для отдельных каталогов сделать рефакторинг.
PS: если у вас есть
Не удалось завершить сеанс: INSTALL_FAILED_INVALID_APK: разделенный lib_slice_0_apk был определен несколько раз
Просто удалите папку сборки appmodule и перестройте проект!
Это решит проблему!
Ответ 14
У меня были проблемы с этим следующим:
https://google-developer-training.github.io/android-developer-fundamentals-course-concepts-v2/appendix/appendix-utilities/appendix-utilities.html
в версии Android Studio: 3.3.2
пока я не убил файл .idea/workspace.xml.
$ cp -rv Testcopysource/ TestCopyDest
$ rm TestCopyDest/.idea/workspace.xml
$ stdio.sh & # Run Android Studio on Linux
До этого Android Studio по-прежнему указывала на исходную исходную папку, и все переименования применялись к исходным исходным файлам (в рамках Testcopysource в моем примере выше).
Ответ 15
Требование и тестирование на Android Studio 3.5
Убедитесь, что ваш старый проект работает правильно с вашей существующей библиотекой android studio.
- Скопируйте каталог проекта и переименуйте папку для нового имени проекта, например. Bramara
- Откройте существующий новый проект с помощью Android Studio 3.5. После открытия проекта перейдите к 1: Проект → Проект. Возможно, вы видели, что ваш проект имеет только два каталога, указывающих на новую папку проекта и старую папку проекта. Закройте свой проект.
- Отредактируйте appl.iml в каталоге нового проекта → app → appl.iml с помощью текстового редактора. Замените все старое имя проекта на новое имя проекта.
- Откройте свой новый проект. Перейдите к 1: Проект → Проект. Возможно, вы видели, что ваш проект имеет только один каталог.
- Перейдите к 1: Проект → Пакеты. щелкните правой кнопкой мыши по вашему компоненту → Refactor → Rename.
- Появится предупреждение. Убедитесь, что все изменения будут применены к новой папке проекта! После этого выберите Переименовать пакеты, например. com.dedetok.bramara.
- Перейдите к 1: Проект → Android. Откройте приложение → манифесты → AndroidManifest.xml. Исправьте активность приложения в новом имени пакета. Измените имя приложения на новое.
- Откройте Gradle Scripts → build.gradle(Module: app), измените свой applicationId на новый проект, например com.dedetok.bramara, и синхронизируйте проект.
- Очистите и восстановите свой новый проект.
- Ваш новый проект отредактирован/изменен.
Примечание: если adb run показывает активность не найдена, отредактируйте конфигурацию Run/Debug. Модуль должен указывать на применение модуля, например приложение.