Gostaria de copiar meu projeto Android e criar um novo projeto a partir dos mesmos arquivos, mas com um nome diferente. O objetivo disso é que eu possa ter uma segunda versão do meu aplicativo que é compatível com anúncios na loja de aplicativos.
Encontrei esta resposta aqui:
Android - copie o projeto existente com um novo nome
Mas é para Eclipse. Como posso fazer isso no Android Studio?
Se você usa Gradle - não se esqueça de alterar o atributo applicationId no arquivo app / build.gradle .
fonte
Como free3dom apontou , aqui está o que deve ser feito:
build.gradle
arquivo do aplicativo para alterar o nome do pacote (você pode usar o gerenciador de arquivos).AndroidManifest.xml
para alterar o nome do pacote.gradle sync
.Isso parece funcionar sem problemas.
fonte
.iml
falando ?? posso encontrar um emproject/prjectname.iml
e outro emproject/app/app.iml
, qual deve ser excluído?Se estiver usando a versão mais recente do Android Studio, você pode deixar que ela o ajude nisso.
Observação: testei isso apenas no Android Studio 3.0.
O procedimento é o seguinte:
Na visualização do projeto (acompanha capturas e estrutura no lado esquerdo da tela), selecione Projeto em vez de Android .
O nome do seu projeto será o topo da árvore (junto com as bibliotecas externas).
Selecione seu projeto e vá para
Refactor -> Copy...
.O Android Studio irá perguntar a você o novo nome e onde você deseja copiar o projeto. Forneça o mesmo.
Depois que a cópia for concluída, abra seu novo projeto no Android Studio.
Os pacotes ainda estarão com o nome do projeto antigo.
Esses são os pacotes de classes Java, ID do aplicativo e tudo mais que foi gerado usando o nome do pacote antigo.
Nos precisamos alterar aquilo.
Na visualização do projeto, selecione Android .
Abra o subdiretório java e selecione o pacote principal.
Em seguida, clique com o botão direito nele e vá para
Refactor
entãoRename
.O Android Studio lhe dará um aviso dizendo que vários diretórios correspondem ao pacote que você está prestes a refatorar.
Clique em
Rename package
e nãoRename directory
.Após esta etapa, seu projeto agora está totalmente com o novo nome.
Então
Build -> Clean project
, em seguidaBuild -> Rebuild project
.Agora você pode executar seu novo projeto clonado.
fonte
Atualmente, a melhor maneira de fazer isso é sem copiar o projeto.
Você pode fazer isso usando diferentes sabores em seu
build.gradle
arquivo.Desta forma, você tem apenas uma cópia dos arquivos e pode lidar facilmente com a diferença.
fonte
Esta é uma combinação da resposta do nt.bas com a etapa 9 da resposta do Civic com exemplos visuais, pois demorei um pouco para descobrir o que se pretendia, já que sou novo no Android Studio. Ele foi testado no Android Studio 3.2.1.
Abra o projeto que deseja clonar no Android Studio. (Neste exemplo, o nome do projeto antigo era
test5
e o novo nome do projeto eratest6
)No painel esquerdo de visão geral do arquivo, clique em: Projeto (onde atualmente pode ser android).
Abra app / res / values / strings.xml e altere o nome do projeto antigo (por exemplo, test5) para o novo nome do projeto na linha:
Abra Gradle scripts / build.gradle (Module: app) e altere a linha para a mesma linha com o nome do seu novo projeto:% fig4
fonte
Estou seguindo estas etapas e tem funcionado até agora:
fonte
O apêndice do gitbook Android Developer Fundamentals Course Practicals inclui etapas para copiar e renomear um projeto existente:
https://google-developer-training.gitbooks.io/android-developer-fundamentals-course-practicals/content/en/apencha_utilities.html#copy_project
fonte
Ao refatorar o nome do pacote no Android Studio, você pode precisar clicar na pequena engrenagem à direita do pacote / android / project / etc - navigator e desmarcar 'compact empty middle packages' para ver cada parte do nome do pacote como um diretório próprio. Em seguida, para diretórios individuais, refatorar.
Isso é importante se você precisar alterar todas as partes do nome do pacote. Por exemplo, de com.example.originalproject para org.mydomain.newproject. Caso contrário, a operação de refatoração / renomeação só permitirá que você altere "originalproject" para "newproject" e deixará "com.example" inalterado. Há um bom vídeo que mostra isso: https://www.youtube.com/watch?v=dMK-RBVLeIY
fonte
Ao copiar o projeto, você também precisará excluir os arquivos de compilação intermediária remanescente original (someActivity $ 4.class) dos diretórios C: ... \ AndroidStudioProjects (project_name) \ app \ build \ intermediates \ classes \ release .... Caso contrário, você quase certamente terá falhas de compilação para o novo projeto se tentar compilar o projeto copiado. Refatorar não resolverá isso.
fonte
Tentei a partir de nt.bas answer e gnyrfta answer, que funcionam bem para mim.
Citando a resposta de nt.bas :
Se estiver usando a versão mais recente do Android Studio, você pode deixar que ela o ajude nisso.
Observação: testei isso apenas no Android Studio 3.0.
O procedimento é o seguinte:
Na visualização do projeto (acompanha capturas e estrutura no lado esquerdo da tela), selecione Projeto em vez de Android .
O nome do seu projeto será o topo da árvore (junto com as bibliotecas externas).
Selecione seu projeto e vá para
Refactor -> Copy...
.O Android Studio irá perguntar a você o novo nome e onde você deseja copiar o projeto. Forneça o mesmo.
Depois que a cópia for concluída, abra seu novo projeto no Android Studio.
Os pacotes ainda estarão com o nome do projeto antigo.
Esses são os pacotes de classes Java, ID do aplicativo e tudo mais que foi gerado usando o nome do pacote antigo.
Nos precisamos alterar aquilo.
Na visualização do projeto, selecione Android .
Abra o subdiretório java e selecione o pacote principal.
Em seguida, clique com o botão direito nele e vá para
Refactor
entãoRename
.O Android Studio lhe dará um aviso dizendo que vários diretórios correspondem ao pacote que você está prestes a refatorar.
Clique em
Rename package
e nãoRename directory
.Após esta etapa, seu projeto agora está totalmente com o novo nome.
Então
Build -> Clean project
, em seguidaBuild -> Rebuild project
.Até este ponto, você apenas renomeia o nome completo do projeto . Para renomear o nome do pacote, você precisa seguir a resposta do gnyrfta, que foi descrita como:
Ao refatorar o nome do pacote no Android Studio, você pode precisar clicar na pequena engrenagem à direita do pacote / android / project / etc - navigator e desmarcar 'compact empty middle packages' para ver cada parte do nome do pacote como um diretório próprio. Em seguida, para diretórios individuais, refatorar.
PS: Se você está tendo um
Basta excluir a pasta de construção do appmodule e reconstruir o projeto!
Isso vai resolver o problema!
fonte
Estou usando o Android 3.3 e é assim que funcionou para mim:
1 - Escolha a visualização do projeto
2 - Clique com o botão direito no nome do projeto, que está na raiz do projeto e escolha a opção
refactor -> copy
, aparecerá uma janela para você escolher o novo nome.3 - Após a etapa 2, o Android fará um novo projeto para você, você tem que abrir esse novo projeto com o novo nome
4 - Altere o nome do app no "string.xml", fica em "app / res / values / string.xml"
Agora você tem, o mesmo projeto com um novo nome. Agora você pode querer mudar o nome do pacote, está descrito nas seguintes etapas
(opcional) Para alterar o nome do pacote principal
5 - vá em "app / java", haverá três pastas com o mesmo nome, uma principal, uma
(androidTest)
e uma(test)
, clique com o botão direito na principal e escolhaformat -> rename
, será exibido um aviso de que vários diretórios correspondem a esse pacote e clique em "Renomear pacote". Escolha um novo nome e clique em refatorar. Agora, abaixo da visualização do código, aqui terá uma visualização do refatoramento, clique em "Do refactor"6 - Vá até a opção "construir", clique em "Limpar projeto", depois em "Reconstruir projeto".
7 - Agora feche o projeto e reabra-o novamente.
fonte
Vá para a pasta de origem onde está seu projeto.
->Settings.gradle
.':your new project name '
fonte
Requisito e teste no Android Studio 3.5
Certifique-se de que seu projeto antigo esteja funcionando corretamente com a biblioteca do Android Studio existente.
Nota: se adb executado mostrando atividade não encontrada, edite sua configuração de execução / depuração. O módulo deve apontar para o aplicativo do módulo, por exemplo, app.
fonte
A maneira MAIS FÁCIL (e definitivamente a mais rápida) de fazer requer WINRAR, 7zip ou software de arquivamento semelhante:
Encontre a pasta do projeto no Windows Explorer - clique duas vezes para abrir esta pasta.
Crie uma nova pasta com o nome "Backup".
Ainda na pasta do projeto, selecione todos os arquivos / pastas, exceto a pasta "backup".
Clique com o botão direito e selecione "adicionar ao arquivo" ou "criar arquivo" (o comando será diferente dependendo do seu software de arquivamento)
Nomeie o arquivo e clique em ok.
Mova este arquivo para a pasta "Backup".
Pronto - para abrir o arquivo de backup, abra a pasta "Backup" e clique com o botão direito do mouse no arquivo de backup. Selecione "Extrair" ou crie uma nova pasta para a qual os arquivos serão extraídos e clique em "ok" e abra o projeto como faria normalmente no Android Studio, etc.
fonte
Tive problemas com o seguinte:
https://google-developer-training.github.io/android-developer-fundamentals-course-concepts-v2/apêndice/apêndice-utilities/apencha-utilities.html
na versão Android Studio: 3.3.2
até matar o arquivo .idea / workspace.xml.
Antes de fazer isso, o Android Studio ainda apontava para a pasta de origem original e todas as renomeações eram aplicadas aos arquivos de origem originais (dentro do Testcopysource no meu exemplo acima).
fonte
Em fevereiro de 2020, para o Android Studio 3.5.3, a resposta mais simples que encontrei é este vídeo.
Nota 1: Em 01.24, a guia "Localizar" aparece abaixo. Clique em "Do Refactor" e continue como no vídeo.
Observação 2: se você tiver arquivos Java / Kotlin "marcados como texto simples", precisará modificar o nome do pacote no topo manualmente, ou seja,
package com.example.thisplaceneedstobemanuallyupdated
Nota 3: tenha cuidado com as maiúsculas e minúsculas ao renomear, assim como no vídeo.
Nota 4: Se você deseja atualizar o nome do projeto na barra de título da janela do projeto, modifique
rootProject.name = 'YourProjectName'
dentro do arquivo " settings.gradle " no diretório " Gradle Scripts ".fonte