Italian Assenza connessione

giannimaione

Well-Known Member
Licensed User
Longtime User
nicolino33 ha scritto:
Ciao ragazzi, ho un server socket su pc, e un client socket su android, tutto funziona alla perfezione sia in wifi che in 3g, però c'è un problema: quando sono fuori casa, e passa in 3g, se per caso la 3g non è disponibile per mancanza rete il socket non se ne accorge, e continua ad inviare dati come se niente fosse, idem il server, in paratica ne l'uno nel 'altro si accorgono che la connessione è interrotta per mancanza rete. Esiste un modo per intercettare questo evento?
 

nicolino33

Active Member
Licensed User
Longtime User
in realtà era un mio errore, l'evento di disconnessione avviene, in Astreams_Error, solo che mi ero dimenticato di mettere un log di avviso nell'evento...
 

nicolino33

Active Member
Licensed User
Longtime User
Già che ci sono vorrei farvi un altra domanda: ma quando si condivide un file da WhatsApp o altre app verso un app realizzata con b4a, è possibile risalire al link del file condiviso all'interno del telefono in modo da conoscere l'estensione? la uri che ottengo contiene soltanto la locazione del file con il suo nome, ma non l'estensione, quindi se si condivide un audio o un immagine la uri non permette di capire che tipo di file è. Ho provato diversi metodi (RunMethod) ma non riesco a trovare quello giusto.
 

LucaMs

Expert
Licensed User
Longtime User
Già che ci sono vorrei farvi un altra domanda: ma quando si condivide un file da WhatsApp o altre app verso un app realizzata con b4a, è possibile risalire al link del file condiviso all'interno del telefono in modo da conoscere l'estensione? la uri che ottengo contiene soltanto la locazione del file con il suo nome, ma non l'estensione, quindi se si condivide un audio o un immagine la uri non permette di capire che tipo di file è. Ho provato diversi metodi (RunMethod) ma non riesco a trovare quello giusto.
Di recente avevo letto la stessa domanda nel forum "internazionale"; non mi pare che ci sia una soluzione:
https://www.b4x.com/android/forum/threads/get-file-extension.92176/
 

nicolino33

Active Member
Licensed User
Longtime User
Grazie Luca, noto che però il problema si manifesta anche condividendo da alcune cartelle, ad esempio se provo a condividere un mp3 situato nella cartella Music, l'uri che ottengo è il seguente: uri: content://media/external/audio/media/20175, premetto che nel manifest ho settato anche file audio ( <data android:mimeType="audio/*"/> ), se condivido un wav mi vede l'indirizzo esatto, con altri tipi di file no, restituisce sempre content://media/external/ etc... senza estensione ne nome file

******** RISOLTO ********

Trovate le librerie che si occupano di estrapolare l'indirizzo reale del file:

- ContentResolver
- UriTools

La funzione:

B4X:
  Dim fn As String
  Dim uri1 As Uri
  Dim ut As uriTools
  uri1.Parse(uri)
  fn = ut.getRealPathFromURI(uri1)

in fn troviamo l'indirizzo reale con nome file ed estensione
 
Last edited:
Top