Flutter

Platform Channels

MethodChannel, EventChannel, integrazione di codice nativo, API native Android/iOS, FFI

20 domande da colloquio·
Senior
1

Che cos'è un Platform Channel in Flutter?

Risposta

Un Platform Channel è un meccanismo di comunicazione bidirezionale tra il codice Dart di Flutter e il codice nativo della piattaforma (Android/iOS). Consente di chiamare API native non disponibili in Flutter, come accedere ai sensori hardware, usare SDK nativi o integrare codice legacy. La comunicazione usa una codifica binaria standardizzata per trasmettere messaggi asincroni tra i due ambienti.

2

Qual è la differenza principale tra MethodChannel ed EventChannel?

Risposta

MethodChannel consente chiamate di metodo singole con una risposta unica (pattern richiesta/risposta), ideale per operazioni come ottenere il livello della batteria o eseguire una funzione nativa. EventChannel permette di ricevere un flusso continuo di dati dal codice nativo come Stream di Dart, perfetto per eventi ricorrenti come aggiornamenti GPS, letture di sensori o notifiche di sistema.

3

Quale codec viene usato per impostazione predefinita per serializzare i dati in un MethodChannel?

Risposta

StandardMethodCodec è il codec predefinito usato da MethodChannel. Utilizza StandardMessageCodec per codificare e decodificare i valori scambiati tra Dart e il codice nativo. Questo codec supporta i tipi primitivi (null, bool, int, double, String), le liste e le map. Per esigenze specifiche, è possibile creare codec personalizzati o usare JSONMethodCodec per una serializzazione JSON.

4

Come definire un nome univoco per un Platform Channel?

5

Su quale thread vengono ricevute le chiamate MethodChannel sul lato nativo Android?

+17 domande da colloquio

Padroneggia Flutter per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis