Categories News

La creación de Rust multiplataforma para Web, Android e iOS es un ejemplo mínimo


06 de julio de 2022 [Android, Programming, Rust, Tech]

Una de las ventajas de escribir código en Rust es que se puede reutilizar en otros lugares. Tanto iOS como Android permiten el uso de bibliotecas nativas en sus aplicaciones, y Rust compila en bibliotecas nativas. Las páginas web ahora pueden usar WebAssembly (WASM) y Rust se puede compilar en WASM.

Entonces debería ser fácil, ¿verdad?

Bueno, en la práctica parece un poco complicado, así que hice un pequeño proyecto de ejemplo para explicármelo, así que tal vez esto también te pueda ayudar.

El código completo está en gitlab.com/andybalaam/example-rust-bindings, pero aquí hay una descripción general:

  • caja/ejemplo-encuadernación oxidada – código original de Rust
  • encuadernación/ffi – código uniffi para crear objetos compartidos para Android e iOS
  • encuadernación/wasm – código wasm_bingen para construir WASM para la Web
  • ejemplo/ejemplo-Android – Aplicación de Android que genera contenedores Kotlin y ejecuta código en objetos compartidos
  • ejemplo/ejemplo-ios – un proyecto iOS XCode donde creamos enlaces Swift, para que podamos llamar código en objetos compartidos
  • ejemplo/ejemplo-web – una página web que importa WASM y lo ejecuta

Pasos para WASM

Variación: si modifica el script de compilación en package.json para llamar a wasm-pack con –target node en lugar de –target web, puede generar el código apropiado para usar desde el módulo NodeJS.

Pasos para Android

Prueba de que estoy haciendo esto en Android: el emulador de Android muestra etiquetas "¡Estas cuerdas son de Rust!"

Pasos para iOS

Agen Togel Terpercaya

Bandar Togel

Sabung Ayam Online

Berita Terkini

Artikel Terbaru

Berita Terbaru

Penerbangan

Berita Politik

Berita Politik

Software

Software Download

Download Aplikasi

Berita Terkini

News

Jasa PBN

Jasa Artikel

News

Breaking News

Berita

More From Author