Gestione delle sessioni mobili in 4D per iOS

Tradotto automaticamente da Deepl

4D per iOS racchiude diverse funzionalità e concetti per aiutarvi a iniziare facilmente la vostra prima applicazione mobile. Oltre alla guida passo-passo, forniremo dei post sul blog con suggerimenti per accelerare il processo di apprendimento. In questo post esploreremo un concetto importante di 4D per iOS: La gestione delle sessioni mobili.

Gestione delle sessioni mobili

La gestione della sessione mobile vi consentirà di tenere traccia degli utenti dopo la loro prima richiesta. In poche parole, questo garantisce la possibilità di identificare ogni utente e di autorizzare o bloccare il suo accesso ai dati dell’applicazione, modificando lo stato della sua richiesta utente in accettato o in sospeso.

Se siete uno sviluppatore 4D, le sessioni possono essere di grande aiuto per proteggere i dati del vostro server, perché vi permettono di autenticare l’utente che accede al vostro server 4D tramite un’app mobile.

Un altro caso d’uso: Se siete un amministratore di server, potete usare la gestione delle sessioni per definire gli utenti che sono autorizzati a connettersi al vostro server 4D, in modo da limitare l’accesso solo a coloro che hanno i permessi di accesso.

Gestione delle sessioni in 4D per iOS

In 4D per iOS, sarete in grado di identificare chi sta tentando di accedere ai dati della vostra app in tempo reale tramite un file JSON Mobile User. Esso fornisce informazioni strutturate come l’e-mail dell’utente, l’ID app e l’ID dispositivo per ogni app:

{
"application":{
"id":"com.contactApp.Contact",
"name":"Contact",
"version":"1.0.0"
},
"team":{
"id":"DAVAZDX8W5"
},
"language":{
"id":"en_US",
"code":"en",
"region":"US"
},
"email":"david@4D.com",
"device":{
"description":"iPhone X",
"version":"11.3",
"id":"0DC5132E-1EF4-407C-A832-5FE33D818AF3",
"simulator":true
},
"send":"link",
"session":{
"id":"7023d9205074199d1c16fc00d24354e778137675",
"ip":"::ffff:192.168.5.4"
},
"status":"accepted",
"token":"eyJhcHBOYW1lSUQiOiJjb20uY29udGFjdEFwcC5Db250YWN0IiwiaWQiOiI3MDIzZDkyMDUwNzQxOTlkMWMxNmZjMDBkMjQzNTRlNzc4MTM3Njc1IiwidGVhbUlEIjoiVVRUN1ZEWDhXNSJ9"
}

Quando un utente lancia la vostra app per la prima volta, viene creato un file Mobile User che viene memorizzato accanto al file 4DD corrente nella cartella MobileApps. Questa cartella contiene tutti i file utente Mobile, organizzati e raggruppati per cartella di app.

Per gestire l’accesso dei vostri utenti, potete modificare manualmente lo stato di ogni file utente mobile o, ancora meglio, creare la vostra interfaccia!

Metodo di autenticazione

Il metodo di database On Mobile App Authentication verrà richiamato per concedere o bloccare l’accesso in modo programmatico quando un utente ha uno stato in sospeso e cerca di accedere al server, ad esempio per ricaricare i dati. È possibile creare e modificare questo metodo di autenticazione direttamente dall’editor del progetto, nella sezione Publishing. blank

Facendo clic sul pulsante Crea..., viene creato un modello pronto per essere utilizzato:

C_OBJECT($0;$response)
C_OBJECT($1;$request)

$request :=$1 // Informations provided by mobile application
$response :=New object
// Informations returned to mobile application
// Check user email
If ($request.email=Null)
// No email means Guest mode - Allow connection
$response .success:=True
Else
// Authenticated mode - Allow or not the connection according to email or other device property
$response .success:=True

End if
// Optional message to display on mobile App.
If ($response.success)
$response.statusText:="L'utente è stato autenticato con successo"
Else
$response .statusText:="Spiacenti, l'utente non è autorizzato a utilizzare questa applicazione."
End if
$0:=$response

Se l’opzione “Login obbligatorio” è selezionata, all’avvio dell’applicazione verrà visualizzato un modulo di login. Si può anche scegliere di lasciare deselezionata l’opzione “Accesso richiesto” per utilizzare l’applicazione in modalità “ospite”.

Poiché le app 4D per iOS sono installate con dati incorporati, gli utenti guest potranno vedere i dati iniziali. In questo caso, è possibile autorizzare o bloccare l’accesso solo per ricaricare i dati nella propria app 4D per iOS.

Concentriamoci sull’esperienza dell’utente di 4D per iOS sia per lo stato accettato che per quello in attesa.

stato accettato

Quando l’accesso è richiesto con uno stato accettato:

  • L’utente inserisce il proprio indirizzo e-mail
  • Viene visualizzata una notifica per informarlo che è stato autenticato
  • Può ricaricare i dati dalla schermata delle impostazioni

blank

Stato in attesa

Quando è richiesto l’accesso con uno stato in attesa:

  • L’utente inserisce il proprio indirizzo e-mail
  • Viene visualizzata una notifica per informare che l’utente non è autorizzato a utilizzare l’applicazione.
  • Se un utente ha già effettuato l’accesso e il suo stato viene modificato in sospeso, non può ricaricare i dati e viene reindirizzato al modulo di accesso.

blank

Per semplificarvi la vita, stiamo lavorando per fornirvi un componente pronto all’uso che vi aiuterà nella gestione delle sessioni mobili. Restate sintonizzati!

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.