4D per iOS: Interagire facilmente con le app native di Apple

Tradotto automaticamente da Deepl

Con 4D per iOS, pensiamo sempre alle funzionalità mobile-friendly. Lo scopo principale è aiutare gli sviluppatori a fornire la migliore esperienza utente per le loro applicazioni mobili. Ecco perché, con 4D v19 R3, stiamo introducendo i controlli di input di azione.

Che cos’è un controllo di input?

Come promemoria, con i formattatori che utilizzano il codice iOS disponibile nella galleria, è possibile interagire facilmente con le applicazioni native iOS dal proprio telefono cellulare. Ad esempio, è possibile comporre automaticamente un numero di telefono facendo clic sul campo del numero di telefono o aprire l’app Safari facendo semplicemente clic su un URL.

I controlli di input di azione seguono la stessa logica. Utilizzandoli, potrete aggiungere alcuni tipi di moduli nei vostri moduli di azione per interagire con le applicazioni native di Apple. Diversi sono già disponibili nella galleria, come ad esempio :

  • phoneContact: per cercare il numero di telefono di un contatto direttamente dall’app Contatti di Apple
  • emailContact: per cercare l’email di un contatto direttamente dall’app Apple Contact
  • currentLocation e currentLocationAddress: per inserire automaticamente le coordinate (latitudine e longitudine) e gli indirizzi della posizione attuale dell’utente dell’app.

Sono stati progettati per semplificare la vita dei vostri utenti, aprendo loro nuove prospettive attraverso interazioni fluide con l’ambiente iOS.

E soprattutto, siete totalmente liberi di creare i vostri controlli di input, di integrarli nei vostri progetti mobili e di condividerli con la comunità!

Come funziona?

Per utilizzarli nei vostri progetti mobili, dovrete includerli nel vostro database per i formattatori o per i moduli personalizzati di elenchi e dettagli. Per farlo, create una cartella speciale “inputControls”, scaricate dalla galleria il controllo di input che più vi aggrada, decomprimetelo e trascinatelo nella cartella inputControls.

Questo controllo di input azione sarà quindi disponibile e selezionabile nella sezione Azione, nelle proprietà del parametro, a seconda del tipo di parametro dell’azione.

Ecco un esempio

Nel nostro esempio, aggiorneremo un numero di telefono e un’e-mail di un contatto. La novità consiste nel fatto che i dati verranno prelevati dall’applicazione Contatti di Apple. Quindi, in questo caso, utilizzeremo semplicemente i controlli di input dell’azione phoneContact ed emailContact, disponibili nella galleria.

Come appare nell’app dell’utente

L’utente dovrà semplicemente selezionare l’azione editContact dal menu delle azioni per visualizzare il modulo di azione nell’app mobile. Da qui, i controlli di input dell’azione gli daranno la possibilità di selezionare un numero di telefono e un’e-mail dall’app Contatti di Apple.

blank

Come si può vedere, i controlli di input delle azioni sono un altro ottimo modo per interagire con le app Apple Native e aggiungere un’interazione piacevole alle vostre app mobili.

Come appare nell’editor del progetto

blank

Per far funzionare il nostro esempio, dobbiamo creare l’azione di modifica nel metodo del database On Mobile App Action.

codice dell’azione di modifica 4D

Ecco un esempio di codice 4D nel metodo del database On Mobile App Action, per l’azione di modifica della preimpostazione, utilizzando il componente MobileAppServer:

#DECLARE($request : Object)->$response : Object
$action:=MobileAppServer.Action.new($request)
$response:=New object("success"; False)

Case of 
 : ($action.name="editContact") // edit@

  var $entity; $status : Object   
  $entity:=$action.getEntity()

  For each ($key; $request.parameters)
     $entity[$key]:=$request.parameters[$key]
  End for each

  $status:=$entity.save()  // save the entity

  If ($status.success)
    $response.success:=True  // notify App that action success
    $response.dataSynchro:=True  // notify App to refresh the selection
    $response.statusText:="Edited"
			
  Else 
    $response.statusText:="Failed to edit"  // $status.statusText
    $response.errors:=$status.errors
  End if 
End case 

Come promemoria, il componente MobileAppServer, integrato in 4D, consente di accedere a vari metodi di utilità per accelerare la codifica del backend delle applicazioni mobili in 4D.

Non esitate a darci un feedback sul forum di 4D e consultate la documentazione per maggiori dettagli!

David Azancot
- Product Owner di 4D per iOS -David Azancot è entrato a far parte del team 4D Product come Product Owner nel 2017. Si occupa di scrivere le storie degli utenti e di tradurle in specifiche funzionali. Il suo ruolo comprende anche la garanzia che le implementazioni delle funzionalità soddisfino le esigenze dei clienti.David si è laureato con un MBA in Marketing, Internet e Mobilità presso l'Istituto Leonard De Vinci e ha iniziato la sua carriera nel 2011 con una start-up mobile, successivamente acquisita da Madvertise (un gruppo di marketing mobile). Appassionato di interfacce mobili, nel 2015 è stato la scelta naturale per sviluppare formati pubblicitari interattivi per dispositivi mobili per il gruppo. Parallelamente, dal 2012 David sviluppa le proprie applicazioni per iOS e Android.