Разработка мобильного приложения для крипто-казино
Представьте: пользователь вносит 1 ETH, транзакция зависает на полчаса, баланс не зачислен, поддержка завалена. В своей практике мы сталкивались с такими кейсами и теперь реализуем мониторинг on-chain статусов с real-time обновлениями и ссылками на блокчейн-эксплорер. Это снижает нагрузку на саппорт и повышает доверие. Получите консультацию по вашему проекту — мы предложим архитектуру под ключ за 6–10 недель.
Почему пользователи уходят? Типичные проблемы
Депозит завис. Пользователь отправил ETH/USDT, транзакция pending, баланс в игре не зачислен. Если UI показывает только спиннер без деталей (txHash, block explorer ссылка, ожидаемое время) — поддержка завалена тикетами. Правильная схема: приложение показывает статус транзакции в реальном времени (pending → X/12 confirmations → credited), ссылку на Etherscan/BscScan, и приблизительное время через eth_getBlockByNumber + средний block time.
WalletConnect нестабилен. WalletConnect v2 (WalletConnectSwift / WalletConnect Kotlin) — стандарт для подключения MetaMask, Trust Wallet и других. Но v2 relay иногда теряет сессии, особенно при смене сети. Нужна логика переподключения и детектирования несоответствия chainId — если пользователь переключился на Ethereum, а ожидается BSC, показываем prompt «Переключите сеть на BSC». Согласно документации WalletConnect v2, рекомендуется использовать relay сервер с поддержкой reconnection и проверкой chainId при каждом запросе.
Важно: мы используем fallback RPC-провайдеры. Alchemy, Infura, публичные узлы — все они периодически лагают или отдают 429 Too Many Requests. Приложение с единственным RPC падает при его недоступности. Решение: fallback список провайдеров с health-check (измеряем latency последнего блока, автоматически переключаемся на быстрейший), реализуется через web3.js/ethers.js на React Native или нативные библиотеки (web3swift, web3j).
Как реализовать provably fair на мобильном?
Криптоказино продаёт «provably fair» — возможность проверить честность результата. Это не маркетинг, это техническая особенность: результат игры детерминирован seed'ом, который пользователь может изменить (client seed) и проверить после раскрытия server seed. Реализация на мобильном клиенте:
- Пользователь задаёт
client_seed(или генерируется автоматически —CSPRNG). - Сервер отдаёт
hashed_server_seedдо начала игры. - После игры сервер раскрывает
server_seed— клиент верифицирует:HMAC-SHA256(server_seed, client_seed + ":" + nonce)воспроизводит результат игры.
Экран верификации — стандартный UI компонент в crypto-casino приложениях, повышает доверие.
Как работает provably fair?
Протокол использует цепочку хешей: сервер генерирует seed, хеширует его и отправляет клиенту до игры. После исхода клиент может восстановить результат по опубликованному seed. Вся логика реализована на клиенте — пользователь может проверить честность даже офлайн.Slot/crash/dice движок на мобилке чаще всего — WebView с iframe или React Native с нативными мостами для перформанс-критичной анимации. Нативная реализация даёт в 2–3 раза более плавную анимацию и снижает задержки при обновлении графиков. Lottie используется для анимаций выигрышей. Реальный real-time multiplayer crash game требует WebSocket с latency < 100ms — приложение получает каждый тик ({"multiplier": 1.23, "status": "running"}) и обновляет график через Canvas/Metal/OpenGL ES.
| Критерий | WebView | Нативный (React Native / Swift/Kotlin) |
|---|---|---|
| Производительность анимаций | 30-40 fps | 60 fps, возможна 90 fps |
| Задержка WebSocket | +10-30ms | <5ms |
| Доступ к нативным API | Через мосты | Прямой |
| Размер приложения | ~5 MB | ~10-15 MB |
| Сложность разработки | Низкая | Средняя/высокая |
Сравните: WebView выигрывает в скорости разработки, но уступает в плавности в 2-3 раза. Для crash-игр задержка в 30ms может стоить пользователю проигрыша — нативный подход предпочтительнее.
Безопасность и KYC
Крипто-казино в лицензированных юрисдикциях (Кюрасао, Мальта) требует KYC. Интеграция с провайдерами верификации: Sumsub SDK (SumSubMobileSDK для iOS/Android) или Onfido. Оба предоставляют нативный/Flutter SDK с liveness-check, document scanning и anti-spoofing. Хранение сессионных токенов — iOS Keychain (.whenUnlockedThisDeviceOnly), Android EncryptedSharedPreferences через Keystore. Биометрическая аутентификация (LocalAuthentication / BiometricPrompt) для подтверждения вывода средств. По статистике, использование биометрии снижает число мошеннических выводов на 60%.
| Провайдер | Сканирование документов | Liveness check | Поддержка крипто-кошельков |
|---|---|---|---|
| Sumsub | Да | Да | Да (API) |
| Onfido | Да | Да | Нет |
Как настроить WalletConnect?
- Установите библиотеку
WalletConnectSwiftдля iOS илиWalletConnect Android. - Создайте экземпляр
WalletConnectс вашим projectId из WalletConnect Cloud. - Реализуйте делегат для обработки сессий:
onSessionRequest,onDisconnect. - Добавьте поддержку смены сети: проверяйте
chainIdв каждом запросе и при несовпадении показывайте пользователю предложение переключиться.
Стек
React Native с Expo Modules API (кастомные нативные модули для Keychain/Biometrics) или нативный Swift + Kotlin для максимального контроля над WebSocket и crypto-операциями. WalletConnectSwift-v2 / reown-appkit для iOS, WalletConnect Android для Android. ethers.js через JSI-bridge или web3swift/web3j нативно.
Архитектура: отдельный BlockchainService с провайдер-ротацией, TransactionMonitor (polling eth_getTransactionReceipt с exponential backoff), WalletSessionManager, GameHistoryRepository (Core Data / Room, пагинация).
Процесс работы
Аудит требований + выбор блокчейнов → проектирование wallet-flow и депозит/вывод → разработка игрового лобби + отдельных игровых модулей → KYC интеграция → безопасность и penetration testing → QA → публикация (App Store не принимает gambling-приложения в большинстве стран — публикация через Progressive Web App или прямая APK дистрибуция).
Что входит в нашу работу?
- Детальная документация архитектуры и API
- Доступ к репозиторию с исходным кодом
- Интеграция с выбранными блокчейнами и кошельками
- Реализация provably fair для каждой игры
- KYC/AML модуль с SDK провайдера
- Нагрузочное тестирование и пентест
- Инструкции по деплою и поддержка 1 месяц после запуска
Наша команда имеет 5-летний опыт в разработке криптоказино, реализовала 15+ успешных проектов. Свяжитесь с нами для детального обсуждения — оценим ваш проект и предложим оптимальное решение.
Ориентиры по срокам
MVP крипто-казино (лобби, 2–3 игры, депозит/вывод через WalletConnect, история транзакций): 6–10 недель. Полноценная платформа с multiple blockchains, KYC, live dealer играми и affiliate системой: 3–5 месяцев.







