798 Lesungen
798 Lesungen

Integrieren von JavaScript in Crypto Trading Apps: Herausforderungen und Lösungen

von EVEDEX5m2025/04/16
Read on Terminal Reader

Zu lang; Lesen

EVEDEX und CleverPumpkin beschäftigten sich mit der Integration eines TypeScript SDK in native Krypto-Apps, um JavaScript-Kompatibilität und native Integrationsprobleme zu überwinden.Die Verwendung von nativem Code für Netzwerkaufgaben, WebView für Wallet-Interaktionen und Standard-APIs wie EIP-1193 sicherte eine einheitliche Logik, schnelle Entwicklung und stabile Leistung – die Grundlage für zukünftige mobile Krypto-App-Innovationen.
featured image - Integrieren von JavaScript in Crypto Trading Apps: Herausforderungen und Lösungen
EVEDEX HackerNoon profile picture
0-item


Wie man eine mobile Crypto-App aufbaut und ihre Stabilität gewährleistet

Moderne Krypto-Händler wählen zunehmend Smartphones als ihr primäres Werkzeug - nach Branchendaten werden mehr als 60% der Trades über mobile Geräte getätigt.Dies erfordert, dass Entwickler nicht nur visuell ansprechende Apps erstellen, sondern voll funktionsfähige, sichere und schnelle Handelsplattformen, wo selbst geringfügige Fehler zu schwerwiegenden Folgen führen können (von falschen Gleichgewichtsanzeigen bis hin zu verlorenen Geldern).


Der Aufbau einer mobilen Krypto-Trading-App geht nicht nur darum, eine Web-Schnittstelle in eine App zu transportieren.Es ist eine eigenständige technische Herausforderung mit vielen Nuancen.Benutzer erwarten, schnell, bequem und sicher zu handeln, ohne die technischen Details zu verstehen.


Zu den wichtigsten Trends, die den mobilen Krypto-Handelsmarkt prägen, gehören:


    ist
  • Ein Wechsel vom Web auf das mobile: Schnittstellen umarmen das mobile-first-Design und die Leistungsanforderungen steigen.
  • ist
  • Nachfrage nach nativen Erlebnissen: Apps müssen schnell, sicher und "nativ" für das Betriebssystem sein.
  • ist


In this article, we share how the EVEDEX team and developers from CleverPumpkin integrated a TypeScript SDK (originally built for the web) into native apps to maintain unified business logic across platforms. This solution offered many advantages, but also brought a fair share of challenges with it.

Why We Chose SDK and the Challenges We Faced

Die Webversion von EVEDEX verwendet bereits ein benutzerdefiniertes Exchange SDK, eine TypeScript-Bibliothek, die die Exchange-API auf der Clientseite verbindet.


Unser Ziel war es, Duplikationen der Logik zu vermeiden, die Anzahl der Bugs zu reduzieren und die Entwicklung zu beschleunigen.


Das SDK wurde jedoch in TypeScript geschrieben und wurde ursprünglich nicht für den Einsatz außerhalb eines Browsers entwickelt.


ist

“We discussed all possible implementation options in detail. Taking the full context into account, we decided to try integrating the full TypeScript SDK into the native apps. This was new territory for us, but we were ready to tackle this unconventional task.”

ist


Alexander Kiaykin, CTO von CleverPumpkin

"Wir haben alle möglichen Implementierungsmöglichkeiten ausführlich diskutiert.Wir haben den gesamten Kontext berücksichtigt und beschlossen, den vollständigen TypeScript SDK in die nativen Apps zu integrieren.


- derAlexander Kiaykin, CTO of CleverPumpkin


Auf iOS hatten wir Zugriff auf den eingebauten JavaScriptCore, aber für Android mussten wir nach einer Alternative suchen.LiquidCore, eine unabhängige Open-Source JS-Engine.


Um eine reibungslose Interaktion mit dem SDK aus dem nativen Code zu gewährleisten, haben wir einen plattformübergreifenden Wrapper entwickelt, der die Kommunikation zwischen dem SDK und der Geschäftslogik der App erleichtert.


Challenges We Faced:

Herausforderungen, mit denen wir konfrontiert sind:


    ist
  • Nicht alle JS-Engine unterstützen die neueste ECMAScript-Syntax: Wir mussten das TypeScript-Transpilationsziel auf eine mit der Engine kompatible JavaScript-Version herunterladen.
  • ist


    ist
  • JS-Engines haben keinen direkten Zugriff auf Systemfunktionen: Dinge wie HTTP-Anfragen, WebSockets und Netzwerkkommunikation mussten im nativen Code implementiert werden.
  • ist


Infolgedessen wurde das SDK modifiziert. Es verwendet nun externe Schnittstellen für die Netzwerklogik, HTTP- und WebSocket-Interaktionen werden auf der Swift/Kotlin-Seite abgewickelt, während die Verarbeitungslogik in JavaScript verbleibt. Am Ende blieb die Geschäftslogik innerhalb des SDK, und Netzwerkoperationen auf niedriger Ebene wurden auf den nativen Code delegiert.

Wallet Integration: Implementing Deposits and Withdrawals

Keine Krypto-Börse kann ohne Ein- und Auszahlungsfunktionalität funktionieren.Unser Ziel war es, diesen Prozess intuitiv und sicher zu gestalten.

Um die Benutzerfreundlichkeit zu erhöhen, haben wir Unterstützung für flexible Asset-Transfers zwischen Netzwerken mit derLI.FIDienstleistungen, die es den Nutzern ermöglichen:


    ist
  • Übertragung von Vermögenswerten von einem Netzwerk auf ein anderes.
  • ist
  • Machen Sie es mit nur wenigen Klicks, ohne manuell nach Brücken zu suchen oder die komplexe Logik von Cross-Chain-Interaktionen zu verstehen.
  • ist
  • Wählen Sie die beste Option basierend auf Preis / Geschwindigkeit Präferenzen.
  • ist


Wir haben uns bewusst dafür entschieden,WebViewObwohl die App mit nativen Technologien erstellt wurde und für SDK-Operationen eine separate JavaScript-Engine verwendet wird, ermöglichte WebView es uns, die LI.FI-Schnittstelle schnell zu integrieren, ohne die Benutzeroberfläche nativ neu zu implementieren.


Gleichzeitig mussten wir die Besonderheiten der Arbeit mit Krypto-Wallets in einer mobilen Umgebung berücksichtigen.EIP-1193ist(Ethereum Provider JavaScript API), der der Standard ist, der definiert, wie Apps mit Ethereum-Wallets integrieren können.


Die mobile App unterstützt mehrere Verbindungsmethoden:


    ist
  • Über MetaMask
  • ist
  • Importieren einer externen Brieftasche mit einem Samenwort oder einem privaten Schlüssel.
  • ist
  • Erstellen einer neuen Brieftasche direkt innerhalb der App.
  • ist


Unabhängig von der gewählten Methode kann die App als Brieftaschenanbieter für die Einzahlungsseite dienen. Dies ermöglichte es uns, die bestehende Web-Schnittstelle wieder zu nutzen, ohne ein separates System für die mobile App aufzubauen.


NB*: At the current stage, EVEDEX operates with Ethereum-compatible networks only, so alternative standards were not considered.*

NB

Conclusion and Key Takeaways

Die Integration eines TypeScript SDK in eine native mobile App erwies sich als unkonventionelle und manchmal herausfordernde Aufgabe, aber es ermöglichte es uns, ein konsistentes Verhalten auf allen Plattformen zu gewährleisten, Logikduplikationen zu beseitigen, die Anzahl der Fehler zu reduzieren und den Entwicklungsprozess erheblich zu beschleunigen:


    ist
  • Ein Web-SDK kann für mobile Umgebungen angepasst werden, erfordert jedoch eine architektonische Überlegung und eine ordnungsgemäße logische Zersetzung.
  • ist


    ist
  • Das Entkoppeln der Business-Logik von System-Level-Operationen ist für eine nachhaltige Architektur unerlässlich.In unserem Fall befasst sich der native Code mit Netzwerkoperationen und WebSocket-Kommunikation, während sich das SDK ausschließlich auf die Business-Logik konzentriert.
  • ist


    ist
  • Die Verwendung von Standards wie EIP-1193 hilft, die Wallet-Kompatibilität aufrechtzuerhalten und die Implementierung zu vereinfachen.
  • ist


    ist
  • Die Kombination von nativem Code, einer JavaScript-Engine und WebView gab uns die richtige Balance zwischen Entwicklungsgeschwindigkeit, Flexibilität und Benutzererfahrung.
  • ist


ist

"Es war nicht einfach, aber jetzt wissen wir genau, wie man ein TypeScript SDK in eine native Krypto-App einbaut.

ist


— Vlad Komissarov, CTO bei EVEDEX

"Es war nicht einfach, aber jetzt wissen wir genau, wie man ein TypeScript SDK in eine native Krypto-App einbaut.


— Vlad Komissarov, CTO at EVEDEX


Die Entwicklung der EVEDEX-Mobil-App war nicht nur ein weiterer Produktlaunch, es war ein echtes technologisches Experiment, das jetzt als Ausgangspunkt für andere Teams für unkonventionelle Lösungen in der Krypto-Welt dienen kann.


Geschrieben von:

Geschrieben von:

Vlad Komissarov, CTO von EVEDEX

Alexander Kiaykin, CTO vonCleverPumpen

Trending Topics

blockchaincryptocurrencyhackernoon-top-storyprogrammingsoftware-developmenttechnologystartuphackernoon-booksBitcoinbooks