Android скопируйте существующий проект с новым именем в Android Studio


Я хотел бы скопировать мой проект android и создать новый проект из тех же файлов, только с другим именем. Цель этого заключается в том, чтобы у меня была вторая версия моего приложения, которая поддерживается ad в app store.

Я нашел этот ответ здесь:

Android-копировать существующий проект с новым именем

но его для eclipse, как я могу сделать это в Android Studio?

11 72

11 ответов:

шаги в ссылке, которую вы указали, также должны работать для Android Studio. Просто сделайте копию (с помощью файлового менеджера) всей папки модуля и дайте ей новое имя. Теперь откройте его и используйте Refactor -> Rename (щелкните правой кнопкой мыши на элементе, который вы хотите переименовать), чтобы переименовать модуль и пакет.

посмотреть этой подробнее о рефакторинге в IntelliJ / Android Studio.

Если вы используете Gradle - не забудьте изменить ид_приложения на приложения/строить.gradle.

Как free3dom указал, вот что надо сделать

  1. Создать копию с помощью файл менеджера
  2. вручную редактировать приложение build.gradle чтобы изменить имя пакета (вы можете использовать файловый менеджер)
  3. ручное редактирование AndroidManifest.xml изменить имя пакета
  4. запустить gradle sync
  5. откройте проект в android studio, рефакторинг имени пакета
  6. снова запустите gradle sync.

это, кажется, работает без каких-либо проблем

если вы используете новейшую версию Android Studio, вы можете позволить ей помочь вам в этом.

Примечание: Я проверил это только в Android Studio 3.0.

процедура выглядит следующим образом:

  1. в представлении проекта (это происходит вместе с захватами и структурой в левой части экрана) выберите проект вместо Android.
    Название вашего проекта будет в верхней части дерева (наряду с внешними библиотеками).
    Выберите свой проект, затем перейдите в Refactor -> Copy....
    Android Studio спросит вас новое имя и где вы хотите скопировать проект. Обеспечьте то же самое.

  2. после завершения копирования откройте новый проект в Android Studio.
    Пакеты по-прежнему будут находиться под старым именем проекта.
    Это пакеты классов Java, идентификатор приложения и все остальное, что было создано с использованием старого имени пакета.
    Нам нужно изменить это.
    В представлении проекта, выберите Android.
    Откройте java директорию и выберите основной пакет.
    Затем щелкните правой кнопкой мыши на нем и перейдите к Refactor затем Rename.
    Android-студия даст вам предупреждение о том, что несколько каталогов соответствуют пакета, который вы собираетесь рефакторинг.
    Нажмите на Rename package и неRename directory.
    После этого шага ваш проект теперь полностью находится под новым имя.

  3. откройте res / values / strings.xml-файл, и изменить имя проекта.
  4. не забудьте изменить свой идентификатор приложения в"Gradle Build Module: app".
  5. последний шаг-очистить и перестроить проект в противном случае при попытке запустить свой проект Android Studio сообщит вам, что он не может установить APK (если вы запустили предыдущий проект).
    Так что Build -> Clean project затем Build -> Rebuild project.
    Теперь вы можете запустить свой новый клон проект.

цель этого заключается в том, чтобы у меня была вторая версия моего приложения, которая поддерживается ad в app store.

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

 productFlavors {
        flavor1 {
            applicationId = "com.example.my.pkg.flavor1"
        }
        flavorAdSUpport {
            applicationId = "com.example.my.pkg.flavor2"
        }
  }

таким образом, у вас есть только копия файлов, и вы можете легко справиться с разницей.

Я следую этим шагам, и это работает до сих пор:

  1. скопируйте и вставьте папку, как раньше.
  2. откройте Android Studio (v3.0.1).
  3. выберите Открыть существующий проект.
  4. закройте сообщение, которое появится с заголовком: "импорт проектов Gradle".
  5. на левой стороне на вкладке Android Перейдите к: app - > java - > выберите первую папку (папку вашего проекта)
  6. Оптимизация => Переименовать... (Сдвиг+ F6)
  7. переименовать пакет, выберите оба варианта-поместите имя новой папки в нижний регистр.
  8. Сделать Рефакторинг
  9. выберите: Синхронизировать проект с Gradle файлы на панели инструментов.
  10. Build = > Clean Project
  11. перейдите в приложение - > res -> значения - > строки.xml, и изменить имя приложения на 2-й строке.

перейдите в исходную папку, где находится ваш проект.

  1. скопируйте проект и прошлое и измените имя.
  2. откройте Android studio и обновите.
  3. на ->Settings.gradle.
  4. включить ':your new project name '

Я пробовал с обоих из них, который хорошо работает для меня. Цитата из НЗ.бас и гнырфта:

если вы используете новейшую версию Android Studio, вы можете позволить ей помочь вам в этом.

Примечание: Я проверил это только в Android Studio 3.0.

процедура выглядит следующим образом:

  1. в представлении проекта (это происходит вместе с захватами и структурой в левой части экрана) выберите проект вместо Android.
    Имя вашего проекта будет в верхней части дерева (рядом с внешними библиотеками).
    Выберите свой проект, затем перейдите в Refactor -> Copy....
    Android Studio спросит вас новое имя и где вы хотите скопировать проект. Обеспечьте то же самое.

  2. после завершения копирования откройте новый проект в Android Studio.
    Пакеты по-прежнему будут находиться под старым именем проекта.
    То есть Пакеты классов Java, идентификатор приложения и все остальное, что было создано с использованием старого имени пакета.
    Нам нужно это изменить.
    В представлении проекта, выберите Android.
    Откройте java директорию и выберите основной пакет.
    Затем щелкните правой кнопкой мыши на нем и перейдите к Refactor затем Rename.
    Android Studio даст вам предупреждение о том, что несколько каталогов соответствуют пакету, который вы собираетесь рефакторинг.
    Нажмите на Rename package и неRename directory.
    После этого шага, ваш проект теперь полностью под новым именем.

  3. откройте res / values / strings.xml-файл, и изменить имя проекта.
  4. последний шаг-очистить и перестроить проект в противном случае при попытке запустить свой проект Android Studio сообщит вам, что он не может установить APK (если вы запустили предыдущий проект).
    Так что Build -> Clean project затем Build -> Rebuild project.

    теперь вы можете запустить свой новый клонированный проект.

до этого момента вы только переименовать все название проекта. Чтобы переименовать имя упаковки, вам нужно выполнить шаг gnyrfta, который был описан как:

при рефакторинге имени пакета в Android Studio вам может потребоваться щелкнуть небольшое зубчатое колесо справа от пакета / android / project / etc-navigator и снять флажок "компактные пустые средние пакеты", чтобы увидеть каждую часть имени пакета как собственный каталог. Затем для отдельных каталогов делаем рефакторинг.

PS: Если вам не удалось завершить сеанс: INSTALL_FAILED_INVALID_APK: Split lib_slice_0_apk был определен несколько раз

удалить создать папку модуль и перестроить проект!

это исправит проблему!.

при рефакторинге имени пакета в Android Studio вам может потребоваться щелкнуть небольшое зубчатое колесо справа от пакета / android/project / etc - navigator и снять флажок "компактные пустые средние пакеты", чтобы увидеть каждую часть имени пакета как собственный каталог. Затем для отдельных каталогов делаем рефакторинг.

Это должен быть комментарий, но не хватает баллов для этого.

когда вы копируете свой проект, вам также нужно будет удалить исходную промежуточную сборку remnant (someActivity$4.class) файлы из C:...\AndroidStudioProjects (имя_проекта)\app\build\intermediates\classes\release... справочники. В противном случае у вас почти наверняка будут сбои сборки для нового проекта если вы попытаетесь скомпилировать скопированный проект. Рефакторинг этого не решит.

приложение Android Developer Fundamentals Course Practicals gitbook включает в себя шаги по копированию и переименованию существующего проекта:

https://google-developer-training.gitbooks.io/android-developer-fundamentals-course-practicals/content/en/appendix_utilities.html#copy_project