Questa guida ti guiderà nella creazione di un'applicazione mobile utilizzando React, Capacitor, e Konsta UI. Alla fine, saprai come trasformare un'app web React.js in un'applicazione mobile nativa con Capacitor, e implementare un'interfaccia utente nativa utilizzando Konsta UI.
Capacitor consente la facile trasformazione della tua app web React.js in un'applicazione mobile nativa, richiedendo nessuna sostanziale alterazione o apprendimento di nuove strategie come React Native.
Il processo coinvolge pochi passaggi semplici, e prima di rendersene conto, la tua app React.js sarà un'applicazione mobile funzionante. Quindi, rimani con noi mentre ti guideremo in questo viaggio.
Capacitor Overview
CapacitorJS è un vero cambiamento. Può integrarsi facilmente con qualsiasi progetto web e avvolgere la tua app in una view web nativa mentre genera il progetto Xcode e Android Studio nativo. Inoltre, attraverso i suoi plugin, puoi accedere alle funzionalità del dispositivo nativo come la fotocamera tramite un ponte JS.
Capacitor offre un modo semplice per creare un'applicazione mobile nativa senza alcun problema o curva di apprendimento ripida. La sua semplice API e funzionalità streamlinata rendono facile l'inserimento nel tuo progetto.
Configurazione dell'app React.js
Vediamo il metodo più semplice per avviare un'applicazione React. Utilizzeremo il package manager npm per creare una nuova app React:
npx create-react-app my-app
Per trasformare il nostro progetto in un'app mobile nativa, è necessario un export del nostro app.
Ritorneremo a questo momento. Prima, capiamo come integrare Capacitor nella nostra app React.
Integrazione di Capacitor nel tuo App React.js
Il primo passaggio di configurazione potrebbe essere un po' dettagliato, ma dopo di che, aggiornare il tuo wrapper di app nativa diventa semplice come eseguire un sync comando.
In primo luogo, installeremo il Capacitor CLI come dipendenza di sviluppo e lo configureremo all'interno del nostro progetto. Durante la configurazione, accetta i valori predefiniti per nome e ID bundle premendo “invio.”
Successivamente, installeremo il pacchetto di base e i pacchetti pertinenti per le piattaforme iOS e Android.
Infine, aggiungeremo le piattaforme e Capacitor creerà cartelle per ogni piattaforma nella radice del nostro progetto:
# Install the Capacitor CLI locally
npm install -D @capacitor/cli
# Initialize Capacitor in your React project
npx cap init
# Install the required packages
npm install @capacitor/core @capacitor/ios @capacitor/android
# Add the native platforms
npx cap add ios
npx cap add android
La directory ios e la directory android sono ora presenti nel tuo progetto React.js.
Per accedere al progetto Android in seguito, installa Studio AndroidPer iOS, hai bisogno di un Mac e dovresti installare Xcode.
Successivamente, aggiorna il webDir nel tuo capacitor.config.json file come mostrato di seguito:
{
"appId": "com.example.app",
"appName": "my-app",
"webDir": "build",
"bundledWebRuntime": false
}
Esegui il comando di build e sincronizza il tuo progetto con Capacitor:
npm run build
npx cap sync
Il npm run build comando costruirà il tuo progetto React.js, mentre npx cap sync allineerà il web code nei posti precisi delle piattaforme native affinché possano essere eseguiti in un'app.
Now, with a little luck and no errors, your React.js app should be ready for launch on a device!
Costruire e distribuire le tue App native
Sviluppare app iOS richiede Xcode, mentre le app Android necessitano di Android Studio. Se hai l'intenzione di distribuire la tua app sullo store, devi iscriverti al Apple Developer Program per iOS e al Google Play Console per Android.
Il Capacitor CLI semplifica il processo di apertura di entrambi i progetti nativi:
npx cap open ios
npx cap open android
Una volta impostati i progetti nativi, il processo di distribuzione dell'app sul dispositivo connesso è piuttosto semplice.
Per Android Studio, attendi che tutto si carichi e poi distribuisci l'app sul dispositivo connesso.
Per Xcode, stabilisci il tuo account di firma per distribuire l'app sul dispositivo reale anziché solo sul simulatore. Dopo aver fatto ciò, basta cliccare su 'Esegui' per eseguire l'app sul tuo dispositivo connesso, che puoi scegliere in alto.
Se tutto è andato bene, avrai convertito la tua app web React.js in un'applicazione mobile nativa!
Capacitor Live Reload
I frammenti di sviluppo moderni solitamente vengono forniti con il riavvio caldo, e fortunatamente, puoi avere lo stesso con Capacitor ma sul tuo dispositivo mobile!
Puoi rendere il tuo'applicazione ospitata localmente accessibile con il riavvio live sul tuo rete restando in rete, avendo l'app Capacitor caricare il contenuto da una specifica URL.
In primo luogo, determina l'indirizzo IP locale. Su Mac, puoi farlo eseguendo ipconfig getifaddr en0 nel terminale. Su Windows, esegui ipconfig e cerca l'indirizzo IPv4.
Dopo di che, istruisci Capacitor a caricare l'app direttamente dal server aggiungendo un altro parametro al tuo capacitor.config.ts file:
import { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = {
appId: 'com.example.app',
appName: 'my-app',
webDir: 'build',
bundledWebRuntime: false,
server: {
url: 'http://192.168.x.xx:3000',
cleartext: true
}
};
export default config;
Assicurati di utilizzare l'indirizzo IP e il port corretti. Esegui npx cap copy per applicare queste modifiche al nostro progetto nativo.
Una volta distribuito il tuo'applicazione un'altra volta tramite Android Studio o Xcode, qualsiasi modifica all'app React verrà automaticamente ricaricata e visualizzata sul tuo'app!
Tieni presente che se vengono installati nuovi plugin, come la camera, è necessario ricostruire il tuo progetto nativo. Ciò è dovuto al fatto che i file nativi saranno stati modificati e non possono essere aggiornati in tempo reale.
Utilizzare plugin Capacitor
Ecco un esempio di come utilizzare un plugin Capacitor. Installiamo un semplice plugin, il plugin di condivisione, che richiama il dialogo di condivisione nativo:
npm i @capacitor/share
Per utilizzarlo, importa il pacchetto e chiama la rispettiva share() funzione dal nostro app. Considera il file App.js:
import { Share } from '@capacitor/share';
function ShareButton() {
const share = async () => {
await Share.share({
title: 'React App',
text: 'Visit this React App',
url: 'http://localhost:3000',
dialogTitle: 'Share with...'
});
};
return (
<button onClick={share}>
Share
</button>
);
}
export default ShareButton;
Dopo l'installazione di un nuovo plugin, ricorda di sincronizzare nuovamente il tuo progetto React utilizzando npx cap sync.
Implementazione di Konsta UI: una UI mobile più attraente
Per un'esperienza di UI mobile più attraente, utilizzeremo Konsta UI. Fornisce stili specifici per iOS e Android e è facile da utilizzare.
Per utilizzare Konsta UI, installa il pacchetto React:
npm i konsta
Modifica il tuo file come segue: tailwind.config.js sarà integrato con il tuo attuale config Tailwind CSS con varianti e utilità aggiuntive necessarie per Konsta UI.
// import konstaConfig config
const konstaConfig = require('konsta/config')
// wrap config with konstaConfig config
module.exports = konstaConfig({
content: [
'./src/**/*.{js,ts,javascript,tsx}',
],
darkMode: 'media', // or 'class'
theme: {
extend: {},
},
variants: {
extend: {},
},
plugins: [],
})
konstaConfig Ora, configura il componente App principale per impostare i parametri globali come
. Avvolgi l'app principale con App nel theme. Utilizza i componenti React di Konsta UI nelle tue pagine React.js. Apri src/index.js:
import React from 'react';
import ReactDOM from 'react-dom';
import {App} from 'konsta/react';
import './index.css';
import MyApp from './App';
ReactDOM.render(
<React.StrictMode>
<App theme="ios">
<MyApp />
</App>
</React.StrictMode>,
document.getElementById('root')
);
e modificalo in src/App.js . Se tutto è stato fatto correttamente, dovresti vedere un'integrazione senza sforzo tra React e Konsta UI per dare alla tua app mobile un aspetto nativo.
// Konsta UI components
import {
Page,
Navbar,
Block,
Button,
List,
ListItem,
} from 'konsta/react';
export default function MyApp() {
return (
<Page>
<Navbar title="My App" />
<Block strong>
<p>
Welcome to your React & Konsta UI app.
</p>
</Block>
<List>
<ListItem href="/about" title="About" />
</List>
<Block strong>
<Button>Click Me</Button>
</Block>
</Page>
);
}
Conclusioni
__CAPGO_KEEP_0__ offre un mezzo senza soluzione di continuità per costruire app native basate su un progetto web esistente, fornendo un modo semplice per condividere __CAPGO_KEEP_1__ e avere un'interfaccia utente coerente.
Capacitor offers a seamless means of building native apps based on an existing web project, providing a simple way to share code and have consistent UI.
Thanks to technologies like Capacitor, building mobile applications from React.js web apps has never been easier. Take your web development skills to the next level by crafting impressive native mobile apps. Happy coding!
file like so: , iscrivi un account gratuito oggi.
Continua da Building Mobile Apps con React.js puro e Capacitor
Se stai utilizzando Building Mobile Apps con React.js puro e Capacitor per pianificare il comportamento di media e interfaccia nativa, connettilo con Usando @capgo/capacitor-live-attività per la capacità nativa in Usando @capgo/capacitor-live-attività, @capgo/capacitor-live-attività per il dettaglio di implementazione in @capgo/capacitor-live-attività, Usando @capgo/capacitor-player-video per la capacità nativa in Usando @capgo/capacitor-player-video, @capgo/capacitor-video-player per i dettagli di implementazione in @capgo/capacitor-video-player, e Usando @capgo/capacitor-native-navigation per la capacità nativa in Usando @capgo/capacitor-native-navigation.