Sub Activity_Resume
Msgbox(SDExterna, "")
End Sub
Sub SDExterna() As String
'compruebo las posibles ubicaciones de la sd externa
Dim Externa As String
Dim posiblesunidades() As String, a As Int, encontrado As Boolean
posiblesunidades = Array As String("/storage", "/mnt", File.DirRootExternal)
Dim externas() As String, e As Int
externas = Array As String("/ext_card", "/external_sd", "/extsd", "/ext_sd", "/external", "/extSdCard", "/externalSdCard", "/sdcard-ext", "/sdcard0", "/sdcard1", "/sdcard2", "/usbcard1")
For a = 0 To posiblesunidades.Length - 1
For e = 0 To externas.Length - 1
If File.Exists(posiblesunidades(a) & externas(e), "") = True Then
Externa = posiblesunidades(a) & externas(e)
'compruebo que no sea la misma ruta
If Externa <> File.DirRootExternal Then
Try
'ahora compruebo si tienen la misma capacidad y el mismo espacio libre
'si son iguales la descarto
'la ruta puede ser diferente, pero apuntar a la misma ubicacion.
'por ejemplo File.DirRootExternal = /storage/sdcard/0 puede ser igual a /storage/sdcard0
'por lo que no sería la externa.
Dim os As OperatingSystem
os.Initialize("")
Dim tt As Long = os.getFreeBlocks(Externa)
Dim ttt As Long = os.getBlockCount(Externa)
Dim tt1 As Long = os.getFreeBlocks(File.DirRootExternal)
Dim ttt1 As Long= os.getBlockCount(File.DirRootExternal)
If tt <> tt1 AND ttt <> ttt1 Then
encontrado = True
Exit
End If
Catch
Log("")
End Try
Else
Externa = ""
End If
End If
Next
If encontrado = True Then
Return Externa
End If
Next
Return Externa
End Sub