Разработка мобильного приложения крипто-казино под ключ

Клиенты приходят с запросом "сделать мобильное крипто-казино" — и сразу упираются в стену: AppStore и Google Play блокируют gambling-приложения, Web3-кошелёк на телефоне работает иначе, а UX на маленьком экране требует перепроектирования. Мы набили шишек на десятке проектов и теперь предлагаем прове

Направления блокчейн-разработки

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1452
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1309
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1005
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1270
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    719
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    1011

Клиенты приходят с запросом "сделать мобильное крипто-казино" — и сразу упираются в стену: AppStore и Google Play блокируют gambling-приложения, Web3-кошелёк на телефоне работает иначе, а UX на маленьком экране требует перепроектирования. Мы набили шишек на десятке проектов и теперь предлагаем проверенные архитектурные решения. Один из клиентов, запуская PWA, обошёл модерацию за две недели — тогда как нативное приложение у конкурентов висело на ревью три месяца.

Почему мобильное крипто-казино сложнее веб-версии?

Apple и Google строго регулируют азартные игры. Документация Apple по гемблингу допускает gambling только в юрисдикциях с лицензией, требует геоблокировки и ручного рецензирования. Google Play — аналогично. Добавьте криптовалюту: in-app покупки за токены запрещены. В результате стандартный путь через магазины приложений часто закрыт. На мобильных устройствах дополнительно усложняется управление ключами: seed-фразы нельзя хранить в UserDefaults, а биометрия обязательна для транзакций выше порога.

Альтернативы магазинам приложений: PWA устанавливается с браузера, обходит модерацию (минус: на iOS нет push-уведомлений); WebView обёртка прошла через AppStore только при соблюдении лицензий; прямая установка APK для Android снижает доверие, но работает; нативные iOS/Android — только с лицензией Мальты, Великобритании и т.д.

Как мы обходим ограничения App Store и Google Play?

Используем комбинацию подходов. Чаще всего выбираем PWA для быстрого старта с охватом обеих платформ. Для клиентов, которым принципиально нативное приложение, настраиваем геотаргетинг — приложение видно только в разрешённых странах. Также внедряем WebView с крипто-функциями, обёрнутыми в легальный контент (например, приложение как "образовательная игра"). PWA сокращает время выхода на рынок в два раза по сравнению с нативным приложением.

Технический стек и ключевые решения

Фреймворк и Web3

Используем React Native + Expo как основу. Это даёт быстрый выход на обе платформы. Для крипто-взаимодействия — WalletConnect v2 + embedded-кошелёк Privy.

import { WalletConnectModal, useWalletConnectModal } from "@walletconnect/modal-react-native"; import { useProvider, useSigner } from "@web3modal/ethers-react-native"; function CasinoApp() { const { open, isConnected, address } = useWalletConnectModal(); const provider = useProvider(); return ( <NavigationContainer> <Stack.Navigator> <Stack.Screen name="Home" component={HomeScreen} /> <Stack.Screen name="Dice" component={DiceGame} /> <Stack.Screen name="Crash" component={CrashGame} /> <Stack.Screen name="Wallet" component={WalletScreen} /> </Stack.Navigator> {!isConnected && ( <ConnectWalletButton onPress={() => open()} /> )} <WalletConnectModal projectId="YOUR_PROJECT_ID" providerMetadata={{ name: "Casino App", description: "Crypto Casino", url: "https://casino.com", icons: ["https://casino.com/icon.png"], }} /> </NavigationContainer> ); } 

Embedded Wallet для онбординга

Для пользователей без Metamask встроили кошелёк Privy — регистрация по email или SMS. Это подняло конверсию на 35% в одном из проектов.

import { usePrivy, useWallets } from "@privy-io/expo"; function WalletManager() { const { login, user, isReady } = usePrivy(); const { wallets } = useWallets(); const embeddedWallet = wallets.find(w => w.walletClientType === "privy"); if (!user) { return ( <View style={styles.container}> <Button title="Play with Email" onPress={() => login({ type: "email" })} /> <Button title="Connect MetaMask" onPress={() => login({ type: "wallet" })} /> </View> ); } return <WalletDashboard address={embeddedWallet?.address} />; } 

Мобильный UX: Crash Game и биометрия

Вертикальный layout и крупные кнопки (не менее 44pt) — обязательное требование. Для Cash Out в Crash game мы добавили встряску (shake gesture) — это повышает вовлечение.

function CrashGame() { const [multiplier, setMultiplier] = useState(1.0); const [isCashedOut, setIsCashedOut] = useState(false); useShakeGesture(() => { if (!isCashedOut && multiplier > 1.5) { handleCashout(); } }); return ( <SafeAreaView style={styles.container}> <MultiplierDisplay multiplier={multiplier} /> <CrashGraph history={gameHistory} currentMultiplier={multiplier} style={styles.graph} /> <BetPanel style={styles.bottomPanel}> <BetInput /> <AutocashoutInput /> <BigButton onPress={isCashedOut ? undefined : handleCashout} disabled={isCashedOut} style={styles.cashoutButton} > CASHOUT {(betAmount * multiplier).toFixed(4)} ETH </BigButton> </BetPanel> </SafeAreaView> ); } 

Для транзакций выше порога (например, 0.5 ETH) применяем биометрическую аутентификацию — Face ID или Touch ID. Это и безопасность, и соответствие регуляторам.

Push-уведомления и Real-time

Уведомляем о джекпотах, начислении кэшбэка и статусе депозитов через Expo Notifications. Для игр реального времени (Crash, Jackpot) держим WebSocket-соединение с авто-восстановлением.

Сравнение подходов

Критерий PWA React Native (APK/TestFlight) Native iOS/Android
Установка Браузер Прямая Магазины приложений
Модерация Не требуется Частично Требуется лицензия
Push-уведомления iOS — нет Да Да
Производительность Средняя Высокая Максимальная
Стоимость От $20,000 От $40,000 От $60,000

Сравнение встроенных кошельков

Критерий Privy Dynamic Magic Link
Регистрация Email/SMS Email/SMS/OAuth Email/Phone
Поддержка EVM Да Да Да
Некастодиальный Да Да Нет
Конверсия в тестах +35% +30% +25%
Цена за MAU ~$0.10 ~$0.08 ~$0.12
Пример архитектуры push-уведомлений

Используем Expo Notifications для доставки. На iOS для PWA push не работают, поэтому для таких проектов настраиваем FCM через Webpush. Сервер отправляет нотификации через Expo Push API с очередью и ретраями.

Что входит в результат?

  • Архитектурная документация (схема интеграций, decision log)
  • Исходный код с комментариями на TypeScript
  • Скрипты деплоя смарт-контрактов и веб-сервисов
  • Документация по запуску и администрированию
  • Поддержка в течение 1 месяца после запуска (баги, мониторинг)

Наши компетенции

  • Более 7 лет в Web3-разработке
  • Более 40 реализованных проектов для крипто-гемблинга
  • Команда из senior Solidity- и React Native-разработчиков

Процесс и сроки

  1. Анализ юрисдикции и лицензирования — 1 неделя
  2. Проектирование архитектуры — 1-2 недели
  3. Разработка PWA или React Native — 4-14 недель в зависимости от сложности
  4. Интеграция кошельков и биометрии — 2-3 недели
  5. Тестирование и деплой — 2-4 недели

Свяжитесь с нами для оценки вашего проекта. Получите консультацию по стратегии публикации и стеку.