Modelo de app Pro Camera
Câmera nativa sob os controles do seu HTML: alternar, flash, temporizador, grade, salvar na galeria e compartilhar.
Este é o modelo rodando ao vivo. Recursos do celular, como câmera, vibração e notificações, funcionam no app que você criar.
Recursos do celular que este modelo usa
Eles vêm da ponte JavaScript do FreeApp, que todo app criado com o Free HTML to APK inclui. Em um navegador comum, o modelo continua funcionando e as chamadas simplesmente não fazem nada.
Salva uma imagem em Fotos.
Compartilhar um arquivo real.
Toast nativo curto.
Como o modelo os chama
await FreeApp.camera.start({ facing: 'back', behind: true }); // body { background: transparent }
const photo = await FreeApp.camera.capture({ maxSize: 2048 });
img.src = photo.dataUrl;
Deixe com a sua cara usando IA
Copie este prompt no ChatGPT, Gemini ou Claude, troque a ideia pela sua e cole a resposta de volta no editor. Ele já explica para a IA a estrutura do app e os recursos do celular.
Mostrar o prompt para a IA
Build a single-file mobile web app (index.html with inline CSS/JS) for Android WebView.
The app: Pro Camera — a full-screen camera app whose shutter, flip, flash, timer and grid buttons are HTML drawn over the native preview. Native camera under your HTML controls: flip, flash, timer, grid, gallery save and share.
Requirements:
- Mobile-first, touch-friendly UI (min 44px tap targets), works in portrait, supports light and dark mode.
- Use <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"> and pad for env(safe-area-inset-*).
- Must work fully offline: no CDN or external scripts, fonts or images; persist data in localStorage.
The page runs inside an Android app that injects a native bridge as window.FreeApp. Available APIs:
- FreeApp.camera.start(opts?: {facing?: 'back' | 'front', element?: string | Element /* place the preview over this element */, behind?: boolean /* draw under a transparent page so HTML controls float on top */}): Promise<{facing}>
- FreeApp.camera.capture(opts?: {maxSize?: number, quality?: number, mirror?: boolean}): Promise<{dataUrl, facing}> — still photo from the running preview
- FreeApp.camera.switch(): Promise<{facing}>; FreeApp.camera.torch(on: boolean): boolean; FreeApp.camera.stop(): void; FreeApp.camera.isOpen(): boolean
- FreeApp.saveToGallery(dataUrl: string, fileName?: string): Promise<{uri}> — saves an image to Photos
- FreeApp.shareFile(fileName: string, mimeType: string, base64OrDataUrl: string): boolean — share a real file
- FreeApp.toast(message: string): void — short native toast
Rules for the bridge:
- Always guard calls with `window.FreeApp &&` (or `if (window.FreeApp) { … }`) and provide a browser fallback so the page also works in a normal browser.
- The bridge may be injected after your script runs: do native setup inside `window.addEventListener('freeappready', …)` and also run it immediately if window.FreeApp already exists.
- Do not use alert/confirm for normal feedback; prefer FreeApp.toast when available.
Return the complete index.html in one code block.
My idea: [DESCRIBE YOUR APP IDEA HERE]Transforme em um app Android
- Toque em Editar e compilar online. O modelo abre no editor online.
- Mude o texto, as cores e o código e depois escolha um nome de app, um ícone e um nome do pacote.
- Compile. Você recebe um APK assinado para instalar e um AAB para o Google Play, grátis, sem conta e sem marca d'água.
Mais modelos de Mídia
Texto para fala
Leia qualquer texto em voz alta, com idioma, velocidade e tom.
Notas de voz
Dite notas com reconhecimento de voz e salve-as.
Câmera
Pré-visualização ao vivo da câmera, filtros, fotos e salvamento no dispositivo.
Gravador de voz
Grave áudio com medidor de nível, reprodução e salvamento.
Gerador de QR
Crie QR codes offline para texto, links e Wi-Fi; salve em PNG.
Bloco de desenho
Pintura com o dedo, com cores, tamanhos de pincel, desfazer e salvar em PNG.