Começando
Guia completo para setup e configuração inicial do projeto Camera App.
📋 Requisitos de Sistema
Requisitos Mínimos
- Xcode: 16.4 ou superior
- iOS Deployment Target: 18.5 ou superior
- Swift: 5.9+
- macOS: 13.0+ (para rodar Xcode 16.4)
- Device Físico: iPhone ou iPad com iOS 18.5+
⚠️ Importante
A câmera não funciona no Simulator. Você precisa de um dispositivo físico iOS para testar a aplicação.
🚀 Instalação
1. Clone o Repositório
git clone https://github.com/Pedroodelvalle/camera-swift.git cd camera-swift 2. Abra no Xcode
open Camera.xcodeproj Ou abra manualmente:
- Abra o Xcode
- File → Open
- Selecione
Camera.xcodeproj
3. Configure o Signing
- Selecione o projeto Camera no navegador
- Vá para Signing & Capabilities
- Selecione seu Team (conta Apple ID)
- Xcode irá gerar automaticamente o provisioning profile
4. Conecte seu Device
- Conecte iPhone/iPad via USB
- Desbloqueie o device
- Confie no computador se solicitado
- Selecione o device no seletor de destinos do Xcode
5. Build e Run
Pressione ⌘ + R ou clique no botão Play.
💡 Dica
Na primeira execução, você precisará aceitar as permissões de câmera, microfone e galeria de fotos.
🔐 Permissões Necessárias
A aplicação requer as seguintes permissões (já configuradas no projeto):
Camera.entitlements
<key>NSCameraUsageDescription</key> <string>Necessário para gravar vídeos</string> <key>NSMicrophoneUsageDescription</key> <string>Necessário para gravar áudio</string> <key>NSPhotoLibraryAddUsageDescription</key> <string>Necessário para salvar vídeos gravados</string> Essas permissões são solicitadas automaticamente na primeira execução.
🏗️ Estrutura do Projeto
Camera/ ├── Assets.xcassets/ # Recursos visuais ├── CameraApp.swift # Entry point (@main) ├── ContentView.swift # View principal ├── CameraViewModel.swift # Estado e lógica central ├── CaptureSessionController.swift # Gerenciamento AVFoundation ├── SegmentedRecorder.swift # Gravação de takes ├── CameraPreviewView.swift # Preview UIKit bridge ├── TeleprompterOverlay.swift # UI do teleprompter ├── TeleprompterTextView.swift # Scroll do teleprompter ├── TeleprompterViewModel.swift # Lógica do teleprompter ├── GlassCompat.swift # Componentes UI reutilizáveis └── Camera.entitlements # Permissões Camera.xcodeproj/ # Configuração do projeto 🔧 Build Configuration
Target Settings
PRODUCT_NAME: Camera PRODUCT_BUNDLE_IDENTIFIER: com.pedro.Camera DEVELOPMENT_TEAM: (seu team ID) CODE_SIGN_STYLE: Automatic TARGETED_DEVICE_FAMILY: 1,2 (iPhone e iPad) IPHONEOS_DEPLOYMENT_TARGET: 18.5 SWIFT_VERSION: 5.9 Capabilities
- Camera: Acesso à câmera frontal e traseira
- Microphone: Gravação de áudio
- Photo Library: Salvamento de vídeos
🧪 Primeira Execução
O que esperar:
- Splash Screen: Tela preta com logo
- Permissões: Sistema irá solicitar 3 permissões
- Aceite todas para funcionamento completo
- Preview da Câmera: Interface principal será exibida
- Câmera Frontal: Inicia com câmera frontal por padrão
Testando Funcionalidades Básicas
🐛 Troubleshooting
Erro: “Privacy-sensitive data”
Problema: App crasha ao acessar câmera
Solução:
- Verifique se as keys estão no
Info.plistouCamera.entitlements - Limpe o build (
⌘ + Shift + K) - Rebuild o projeto
Erro: Signing Failed
Problema: Não consegue fazer build
Solução:
- Xcode → Preferences → Accounts
- Adicione sua Apple ID
- Baixe os certificados
- Selecione seu Team no projeto
Device Não Aparece
Problema: iPhone não aparece no seletor
Solução:
- Reconecte o cabo USB
- Desbloqueie o iPhone
- Confie no computador
- Window → Devices and Simulators
- Verifique se o device aparece
Câmera Preta / Não Funciona
Problema: Preview mostra tela preta
Solução:
- Use device físico (não funciona em simulator)
- Verifique se aceitou as permissões
- Settings → Camera → Permissões
- Delete o app e reinstale
Torch Não Funciona
Problema: Flash não acende
Solução:
- Back Camera: Requer device físico com flash
- Front Camera: Aumenta brilho da tela (sempre funciona)
- Verifique se device está em low power mode
📱 Devices Testados
O projeto foi testado nos seguintes devices:
| Device | iOS | Status |
|---|---|---|
| iPhone 15 Pro | 18.5 | ✅ Totalmente funcional |
| iPhone 14 Pro | 18.5 | ✅ Totalmente funcional |
| iPhone 13 | 18.5 | ✅ Totalmente funcional |
| iPad Pro M2 | 18.5 | ✅ Totalmente funcional |
✅ Compatibilidade
A aplicação funciona em qualquer device iOS 18.5+ com câmera. Recursos como zoom 0.5x e telephoto dependem do hardware disponível.
📚 Próximos Passos
Agora que você tem o projeto rodando:
- Entenda a Arquitetura - Aprenda sobre MVVM e fluxo de dados
- Explore os Componentes - Documentação detalhada de cada módulo
- Veja os Guias - Tutoriais práticos de uso
🆘 Precisa de Ajuda?
- Documentação: Continue lendo as outras seções
- Issues: Abra uma issue no GitHub
- Código: Explore o source code com comentários inline
| ← Voltar para Início | Próximo: Arquitetura → |