Реалізація внутрішньоігрового NFT-гаманця в мобільній GameFi-грі

Реалізація внутрішньоігрового NFT-гаманця в мобільній GameFi-грі Гравець натиснув «екіпірувати» — інтерфейс завис, транзакція впала, NFT не з'явився. За годину він пішов до конкурентів. У GameFi кожна транзакція — виклик UX. Якщо гаманець не оптимізований під ігровий контекст, користувацький досв

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Реалізація внутрішньоігрового NFT-гаманця в мобільній GameFi-грі
Складний
від 1 тижня до 3 місяців

Наші компетенції:

Часті запитання

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    894
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    597

Реалізація внутрішньоігрового NFT-гаманця в мобільній GameFi-грі

Гравець натиснув «екіпірувати» — інтерфейс завис, транзакція впала, NFT не з'явився. За годину він пішов до конкурентів. У GameFi кожна транзакція — виклик UX. Якщо гаманець не оптимізований під ігровий контекст, користувацький досвід руйнується. Ми вирішуємо це завдання комплексно: від вибору архітектури до деплою в стори. Наша команда — 7+ років у мобільній розробці, 15+ GameFi-проєктів, включаючи інтеграції з Immutable X, Polygon, Ronin.

Архітектура під масову аудиторію

Вибір між custodial, non-custodial та embedded гаманцем визначає всю архітектуру. Custodial (ключі на сервері) — простий онбординг, але KYC та довіра до сервера. Non-custodial (ключі в Keystore/Secure Enclave) — повний контроль, але складність для гравця. Embedded wallet через MPC-бібліотеки (Privy, Magic, Dynamic) — компроміс: вхід по email/social, ключі в HSM. Для casual GameFi останніх років це де-факто стандарт.

Як обрати тип гаманця для GameFi?

Критерії вибору: аудиторія, частота транзакцій, бюджет на онбординг.

Параметр Custodial Non-custodial Embedded
Онбординг Email/пароль Сид-фраза Email/social
Безпека Сервер (HSM) Keystore/Secure Enclave MPC + HSM
KYC Потрібен у ряді країн Не потрібен Зазвичай не потрібен
Газ Оплачує розробник Користувач Розробник/користувач
Вартість розробки Середня Висока Середня

Для ігор з мільйонами користувачів embedded — оптимальний баланс.

Чому Optimistic UI критичний в ігрових транзакціях?

Транзакція в блокчейні — не HTTP-запит. Вона потрапляє в mempool, чекає включення в блок (10 секунд на Polygon, миттєво на Ronin). За цей час користувач продовжує грати. Блокування інтерфейсу неприпустиме.

Паттерн: Optimistic UI + фоновий моніторинг. Одразу оновлюємо стан (екіпірування, отримання нагороди), відправляємо транзакцію, відстежуємо її статус. Якщо fail — відкочуємо.

// iOS — optimistic update func equipItem(_ nft: NftItem) { store.dispatch(EquipAction(tokenId: nft.tokenId)) Task { do { let txHash = try await walletService.equip(nft) await monitor(txHash: txHash, onFail: { store.dispatch(UnequipAction(tokenId: nft.tokenId)) showError("Транзакція не пройшла") }) } catch { store.dispatch(UnequipAction(tokenId: nft.tokenId)) } } } 

Моніторинг — polling через WebSocket або JSON-RPC кожні 3–5 секунд.

Gas estimation та fee UI

Для non-custodial гаманця показуємо gas перед підтвердженням. eth_estimateGasgasPrice → конвертація в USD через CoinGecko API. Не показувати нативний токен без USD-еквіваленту — гравець не знає, скільки коштує 0.0023 MATIC. Immutable X забезпечує газ-free трансфери, що в 100 разів дешевше Polygon і в 1000 разів дешевше Ethereum. Середня вартість транзакції на L2 становить менше $0.001, економія на газі досягає 99% порівняно з Ethereum. Порівняння мереж:

Мережа Середня вартість трансферу NFT Час підтвердження
Ethereum $30–100 10–20 хв
Polygon < $0.001 ~2 сек
Immutable X 0 Миттєво
Ronin < $0.001 ~1 сек

Локальне зберігання NFT-даних

Метадані NFT завантажуємо через tokenURI (ERC-721) або IPFS-гейт. Кешуємо локально — Room / Core Data. Зображення — окремий кеш через Glide (Android) / Kingfisher (iOS) з IPFS URL.

@Entity(tableName = "nft_items") data class NftItem( @PrimaryKey val tokenId: String, val contractAddress: String, val name: String, val imageUrl: String, val metadata: String, // JSON val isEquipped: Boolean = false, val cachedAt: Long = System.currentTimeMillis() ) 

IPFS URLs транслюємо через власний gateway для стабільності.

Транзакційний UX — найскладніше

Типові помилки при інтеграції гаманця - Не враховувати затримки підтвердження та не передбачити fallback - Відсутність кешу метаданих — кожне відкриття інвентаря викликає завантаження - Ігнорування правил App Store (заборона фіатних продажів NFT без IAP) - Зберігання ключів у SharedPreferences або UserDefaults

Безпека приватних ключів

Non-custodial: ключ тільки в Android Keystore або iOS Secure Enclave. Підпис транзакції всередині сховища — ключ не покидає захищену область.

val keyStore = KeyStore.getInstance("AndroidKeyStore") keyStore.load(null) val privateKey = keyStore.getKey(KEY_ALIAS, null) as PrivateKey val signature = Signature.getInstance("SHA256withECDSA") signature.initSign(privateKey) signature.update(transactionHash) val signedBytes = signature.sign() 

NFT-інвентар та фільтрація

Інвентар з 200+ NFT фільтрується миттєво через Room запити. Використовуємо LazyColumn або UICollectionView з DiffableDataSource. Сортування за rarity_score з метаданих.

App Store / Google Play та Web3

Apple приймає NFT-додатки, але забороняє покупку NFT через сторонні платіжні системи без комісії App Store (30%). Допустимо: показ NFT, трансфер між гаманцями, використання в грі. Заборонено: продаж за фіат без IAP. Для marketplace — тільки WebView із зовнішнім сайтом. Google Play дозволив NFT явно, але ті ж правила фіатних продажів. App Store Review Guidelines 3.1.1.

Покроковий процес інтеграції

  1. Аналіз ігрової економіки — визначаємо тип гаманця, L2, бюджет на газ.
  2. Проєктування архітектури — вибір бібліотек (Privy/Magic/Dynamic), схема кешу, модель даних.
  3. Інтеграція смарт-контрактів — підключення ERC-721/ERC-1155, розрахунок gas.
  4. Реалізація клієнтської частини — гаманець, Optimistic UI, моніторинг, кеш.
  5. Тестування на TestFlight/Firebase — симуляція 1000+ транзакцій.
  6. Деплой в стори — перевірка відповідності гайдлайнам Apple/Google.

Що входить в роботу

  • Вибір архітектури гаманця (custodial, non-custodial, embedded) під вашу економіку
  • Проєктування схеми кешу та моделі даних NFT
  • Інтеграція смарт-контрактів та розрахунок газу
  • Реалізація клієнтської частини з Optimistic UI та моніторингом транзакцій
  • Тестування на TestFlight/Firebase з симуляцією пікових навантажень
  • Допомога в проходженні рев'ю App Store та Google Play
  • Документація та передача вихідного коду
  • Гарантійна підтримка на 3 місяці після деплою

Строки

Базовий custodial гаманець з переглядом NFT та трансферами: 1–2 тижні. Full-featured некастодіальний з ігровою механікою та Optimistic UI: 3–5 тижнів. Вартість розраховується індивідуально залежно від обраної мережі та обсягу інтеграцій.

Отримайте консультацію щодо архітектури гаманця для вашої гри — оцінимо проєкт за 2 дні. Зв'яжіться з нами, щоб обговорити інтеграцію.