Modelo de app Loja de moedas
Jogo de vestir pets tocando para ganhar moedas, com pacotes de moedas vendidos como consumíveis do Google Play, entregues uma vez por token de compra.
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.
Toast nativo curto.
Uma vibração única (padrão 50 ms) ou um padrão [desligado, ligado, desligado, ligado…].
Como o modelo os chama
FreeApp.billing.on(e => {
if (e.event !== 'purchase' || granted.includes(e.token)) return;
granted.push(e.token); coins += PACKS[e.id] * e.quantity;
});
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: Coin Shop — a tap game where you dress up a pet with hats, glasses and backgrounds bought with coins, and coin packs coins_100, coins_500 and coins_1200 are sold as consumables. Tap-to-earn pet dress-up with coin packs sold as Google Play consumables, granted once per purchase token.
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-*).
- You may load libraries from a CDN (jsDelivr/unpkg); show a friendly message if the device is offline.
The page runs inside an Android app that injects a native bridge as window.FreeApp. Available APIs:
- FreeApp.billing.{available, products(ids: string[]): Promise<[{id, title, description, type: 'inapp'|'subs', price /* formatted, local currency */, priceMicros, currency, period?, offers?: [{basePlan, offer, tags, phases: [{price, priceMicros, currency, period, cycles}]}], owned, consumable}]>, buy(id, {offer?}): Promise<{id, products, token, orderId, quantity, autoRenewing, alreadyOwned?}> (rejects with err.code: 'cancelled' | 'pending' | 'network' | 'busy' | 'unavailable' | 'developer_error' | 'not_found' | 'already_owned' | 'error'), restore(): Promise<{purchases, owned}>, consume(idOrToken), owned(): string[], isOwned(id): boolean, isAdFree(): boolean, manageSubscriptions(id?), on(cb: (e: {event: 'purchase'|'pending'|'owned'|'failed'|'unavailable', …}) => void)} — Google Play Billing; only present when Purchases is on in the builder. Unlock non-consumables from isOwned()/owned() at startup plus the 'owned' and 'purchase' events (not only in the click handler); grant consumables only in the 'purchase' event, deduplicated by e.token saved in localStorage; use buy()'s promise only for UI; show prices from products(), never hard-coded; say "Payment pending" on 'pending', stay silent on 'cancelled'; always offer a Restore purchases button and, for subscriptions, a Manage subscription link (manageSubscriptions); in a normal browser simulate purchases with a demo store
- FreeApp.toast(message: string): void — short native toast
- FreeApp.vibrate(ms?: number | number[]): void — one-shot buzz (default 50 ms) or an [off, on, off, on…] pattern
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 para ganhar dinheiro
Noite de quiz
Rodadas de perguntas com uma dica 50/50 premiada, um intersticial a cada 3 rodadas e um banner só nos resultados.
Frases do dia
Cartões de frases com favoritas; um anúncio a cada 8 frases ao tocar em Próxima, e um anúncio premiado libera um pacote bônus por 24 h.
Clicker de moedas
Jogo idle de toques com melhorias, um impulso 2× premiado por 60 s, anúncios ao subir de nível a cada 3 níveis e um banner na loja.
Leitor de histórias
Uma história em cinco capítulos; o próximo capítulo fica grátis depois de 10 minutos ou na hora com um anúncio premiado.
Tap Jumper
Corrida infinita em canvas com um Continuar premiado uma vez por partida, um anúncio a cada 3 fins de jogo e um banner na tela de fim de jogo.
Notas Pro
App de notas com desbloqueio Pro de compra única: temas, notas fixadas, exportação em .txt e notas ilimitadas pelo Google Play.