Spanish ¿Como obtener carpeta actual?.

angel_

Well-Known Member
Licensed User
Supongo que te refieres a la interna, prueba así:

B4X:
File.DirInternal
 

Ingeniero Cognitivo

Active Member
Estoy totalmente de acuerdo Oparra, yo también creo que es recomendable utilizar código que valga para las tres plataformas, pero ¿Has comprobado si devuelve la misma ruta?

He comprobado la ruta. Al parecer la aplicacion se ejecuta desde memoria interna directamente, asi que me parece que me equivoque y si que da la ruta de la aplicacion correctamente. Me parecia raro que la aplicacion se ejecutara directamente en la memoria interna pero al parecer es asi.
Quiero crear una base de datos en la carpeta donde este el apk.
 

oparra

Well-Known Member
Licensed User
¿Como puedo obtener la ruta de mi aplicacion?.
Gracias.
usted necesita saber la información del PackageManager de su APP.


busque:
 

oparra

Well-Known Member
Licensed User
ejemplo que puede ayudarte:

y lo demás esta en lo que buscas.

B4X:
Dim ctxt As JavaObject
ctxt.InitializeContext
Dim jpm As JavaObject = ctxt.RunMethod("getPackageManager", Null)
Dim pm As PackageManager
For Each pck As String In pm.GetInstalledPackages
   Dim ApplicationInfo As JavaObject = jpm.RunMethod("getApplicationInfo", Array(pck, 0))
   Log($"Package: ${pck}, Path: ${ApplicationInfo.GetField("publicSourceDir")}"$)
Next

1607109061357.png
 
Last edited:

oparra

Well-Known Member
Licensed User
ejemplo que puede ayudarte:

y lo demás esta en lo que buscas.

B4X:
Dim ctxt As JavaObject
ctxt.InitializeContext
Dim jpm As JavaObject = ctxt.RunMethod("getPackageManager", Null)
Dim pm As PackageManager
For Each pck As String In pm.GetInstalledPackages
   Dim ApplicationInfo As JavaObject = jpm.RunMethod("getApplicationInfo", Array(pck, 0))
   Log($"Package: ${pck}, Path: ${ApplicationInfo.GetField("publicSourceDir")}"$)
Next

View attachment 103985

nota ver aqui:
 

Attachments

  • 1607110014995.png
    1607110014995.png
    47.4 KB · Views: 56

oparra

Well-Known Member
Licensed User
EJEMPLO FINAL FULL PATH DE SU APP QUE ESTA EJECUTANDO:

B4X:
    Dim ctxt As JavaObject
    ctxt.InitializeContext
    Dim jpm As JavaObject = ctxt.RunMethod("getPackageManager", Null)
    Dim ApplicationInfo As JavaObject = jpm.RunMethod("getApplicationInfo", Array(Application.PackageName, 0))
    Log($"Package: ${Application.PackageName}, Path: ${ApplicationInfo.GetField("publicSourceDir")}"$)

1607116688065.png


1607116457532.png


Saludos,
 
Last edited:
Top