Bem-vindo ao Expo 🚀
Aprenda a criar aplicativos mobile que controlam seu ESP32!
🎉 Novidade: Programação Mobile!
Na Etapa 1 você aprendeu a programar o ESP32 usando a Arduino IDE. Agora, na Etapa 2, você vai criar aplicativos para celular que se comunicam com o ESP32 via WiFi!
Arduino IDE
Você já conhece!
VS Code + PHP
Backend da API
Expo Snacks
NOVO! App Mobile
📚 O que é o Expo?
O Expo é uma plataforma que permite criar aplicativos para Android e iOS usando JavaScript e React Native - tudo isso diretamente no navegador!
🎯 Vantagem: Você não precisa instalar Android Studio (que ocupa 10GB+). Basta usar o site snack.expo.dev e testar no seu celular!
✅ O que você VAI usar
- • Navegador (Chrome, Edge, Firefox)
- • Site snack.expo.dev (gratuito)
- • App "Expo Go" no celular
- • Conta gratuita no Expo
❌ O que você NÃO precisa
- • Android Studio
- • Xcode (Mac)
- • Node.js no seu computador
- • Configurações complexas
Criar Conta no Expo
-
1
Acesse o site do Expo
https://expo.dev/signup ↗ -
2
Clique em "Sign Up" (Cadastrar)
Você pode usar sua conta do Google ou GitHub
-
3
Confirme seu email
Verifique sua caixa de entrada
⚠️ Importante: Guarde seu usuário e senha! Você vai precisar para acessar o app Expo Go no celular.
Instalar o Expo Go no Celular
O Expo Go é o aplicativo que vai rodar seu código no celular. Instale no seu smartphone:
💡 Dica: Após instalar, abra o app e faça login com a mesma conta que você criou no passo anterior!
Seu Primeiro Snack - Hello World! 👋
Um "Snack" é como chamamos um projeto no Expo. É um ambiente completo de desenvolvimento que roda no navegador!
-
1
Acesse o Expo Snack
https://snack.expo.dev/ ↗ -
2
Faça login (canto superior direito)
Use a conta que você criou
-
3
Você verá um código de exemplo
Vamos substituir pelo nosso Hello World!
import React from 'react';
import { View, Text, StyleSheet } from 'react-native';
// Este é o componente principal do app
export default function App() {
return (
<View style={styles.container}>
<Text style={styles.titulo}>
🚀 Olá, Mundo!
</Text>
<Text style={styles.subtitulo}>
Meu primeiro app com React Native
</Text>
<Text style={styles.emoji}>
📱 ↔️ 🔌
</Text>
<Text style={styles.rodape}>
Tutorial do Prof. Reginaldo
</Text>
</View>
);
}
// Estilos do app (similar ao CSS)
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#1e293b', // Fundo escuro
alignItems: 'center',
justifyContent: 'center',
padding: 20,
},
titulo: {
fontSize: 32,
fontWeight: 'bold',
color: '#22d3ee', // Ciano
marginBottom: 10,
},
subtitulo: {
fontSize: 18,
color: '#94a3b8', // Cinza claro
marginBottom: 30,
},
emoji: {
fontSize: 48,
marginBottom: 30,
},
rodape: {
fontSize: 14,
color: '#64748b',
position: 'absolute',
bottom: 50,
},
});
import { View, Text, StyleSheet }
Importamos os componentes básicos do React Native:
View (container, como uma div),
Text (texto) e
StyleSheet (para criar estilos).
export default function App()
Todo app React Native tem um componente principal chamado App. Ele retorna o que será exibido na tela.
StyleSheet.create({ ... })
Diferente do CSS tradicional, no React Native usamos objetos JavaScript
para definir estilos. Propriedades como backgroundColor
são em camelCase.
Testar no Celular 📲
-
1
Cole o código acima no editor do Snack
Substitua todo o conteúdo do arquivo App.js
-
2
Clique na aba "My Device" no painel direito
Vai aparecer um QR Code
-
3
Abra o Expo Go no celular e escaneie o QR Code
O app vai carregar automaticamente!
🎉 Parabéns! Se você viu a tela "🚀 Olá, Mundo!" no seu celular, você acabou de criar seu primeiro app mobile!
🔄 HTML vs React Native
Se você conhece HTML, vai se sentir em casa! Veja as equivalências:
| HTML | React Native | Uso |
|---|---|---|
| <div> | <View> | Container/Caixa |
| <p>, <span>, <h1> | <Text> | Qualquer texto |
| <img> | <Image> | Imagens |
| <button> | <TouchableOpacity> | Botão tocável |
| <input> | <TextInput> | Campo de texto |
| <ul><li> | <FlatList> | Lista de itens |
📝 Teste seus Conhecimentos
Quiz Gamificado
Responda às perguntas para ganhar XP e desbloquear a primeira atividade mobile!
Carregando quiz...
🎯 O que vem a seguir?
LED via Mobile 💡
Crie um app para ligar/desligar o LED do ESP32 usando um botão no celular!
Mais atividades...
Monitor de luminosidade, estação meteorológica e mais!