Note: Projeto para matéria de android na faculdade, será um aplicativo mobile com foco em organização de estudos.
- No aplicativo será disponibilizado funções como pomodoro e linkar cada sessão pomodoro com a matéria que vai estudar
- Possuir um checkout de dias de ofensivas que é semelhante ao Duolingo, um histórico da semana/mes/ano de quantas sessões foram realizadas.
- Sistema de notificação que o usuário vai definir os dias da semana que serão de estudos e qual vai ser a hora e a matéria que vai estudar naquele dia/hora, com isso receberá uma notificação para lembrá-lo.
- Existe a possibilidade do projeto receber funções como mostrar seu perfil, com todos os históricos, talvez a implementação de funções de Flash Cards, mas que serão analisadas com o tempo.
- Java/JDK 17
- Android Studio
- NodeJS
- MongoDB
Baixe o arquivo .apk
da versão mais recente clicando aqui (para android):
Necessário ter instalado as tecnologias citadas na parte de tecnologias
- Abrir variavel de ambiente e ir em [New] -> Variable name: ANDROID_HOME | Variable value: C:\Users\SEU-USUARIO\AppData\Local\Android\Sdk
- Dentro da variavel de ambiente clique em cima da Path e vá em [Edit] -> New -> C:\Users\SEU-USUARIO\AppData\Local\Android\Sdk\platform-tools
Configurar variavel da JDK na variavel de ambiente do sistema.
- Abrir variavel de ambiente e ir em [New] -> Variable name: JAVA_HOME | Variable value: C:\Users\SEU-USUARIO\AppData\Local\Java\JDK... (Vai tar o nome da versao da JDK)
- Dentro da variavel de ambiente clique em cima da Path e vá em [Edit] -> New -> C:\Users\SEU-USUARIO\AppData\Local\Android\Java\JDK...\bin
Dar permissao para emular android:
- Abrir POWERSHEEL e usar -> Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072;
Entrar na pasta do projeto -> cd ANDROID20251
- Usar o comando -> npx.cmd react-native run-android
Necessário ter instalado as tecnologias citadas na parte de tecnologias.
(Opcional) - Configurar para usar npm sem problemas de uso de sudo.
- Criar o: mkdir -p ~/.npm-global
- npm config set prefix '~/.npm-global'
- export PATH="$HOME/.npm-global/bin:$PATH"
Estar usando a versão do Java(JDK) 17. Para saber sua versão basta :
java -version
Instale o Android Studio para continuar
Depois configure seu .bashrc, com o PATH da SDK do Android Studio.
vim ~/.bashrc
Adicione o PATH da SDK do Android Studio no .bashrc, geralmente é o mesmo que já está no comando:
export PATH="$HOME/.npm-global/bin:$PATH"
export ANDROID_HOME=$HOME/Android/Sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
Dê um reload no .bashrc para atualizar:
source ~/.bashrc
Confirme que deu certo e possui o ANDROID_HOME:
echo $ANDROID_HOME
Agora abra a tela no Android studio Vá em Virtual Device Manager e escolha seu tamanho de tela preferido, recomendo Medium phone
Após escolher o tamanho, rode o Android Studio, dando play no tamanho escolhido.
Clone este repositório (se ainda não o fez):
git clone https://github.com/seu-usuario/studano.git
Navegue até a pasta do projeto que foi criada:
cd studano
Instale as libs:
npm i
Rode no terminal:
npm run dev:android
Rode o Metro para dar reload no Projecto:
npx react-native start --reset-cache
Em outro terminal, rode:
npx react-native run-android
As tasks criadas estão nas Issues, mas pode ser visto pelo Projects se você possuir acesso.
Quando decidido qual task deseja fazer, você deve dar Assign para você:
Após isso para desenvolver, recomenda-se que crie uma branch local a partir da main, colocando o nome da task, exemplo: TDEV-1
git checkout main
git pull
git checkout -b TDEV-1
Motivo: Organização de branches da aplicação, para evitar criar conflitos na master e também para saber a qual tarefa se trata aqueles commit, o sufixo de TDEV é referenciado como Tarefa de Desenvolvimento.
Quando a task estiver finalizada, pode dar merge request pra main, só não esqueça de manter a branch da atualizada.