安卓文件路径
安卓文件路径
默认的权限只能存取自己应用的文档目录,不能存取外部的存储空间的。
Delphi有一个System.IOUtils单元,
里面有一个TPath,是一个跨平台的路径操作结构体,
里面有获取常用路径的静态方法(不需要创建直接可以调用的方法)。
因为通常情况下,我们开发的应用会先在Windows平台下进行测试,
所以先来看一下这些方法在Windows平台下都指向哪些目录:
GetHomePath:
C:\Users\ggggcexx\AppData\Roaming
GetDocumentsPath:
C:\Users\ggggcexx\Documents
GetSharedDocumentsPath:
C:\Users\Public\Documents
GetLibraryPath:
C:\MyFiles\OrangeUIProduct\项目名称\APP\Win32\Debug\
GetCachePath:
C:\Users\ggggcexx\AppData\Local
GetPublicPath:
C:\ProgramData
GetPicturesPath:
C:\Users\ggggcexx\Pictures
GetSharedPicturesPath:
C:\Users\Public\Pictures
GetCameraPath:
C:\Users\ggggcexx\Pictures
GetSharedCameraPath:
C:\Users\Public\Pictures
GetDownloadsPath:
C:\Users\ggggcexx\Downloads
GetSharedDownloadsPath:
C:\Users\Public\Downloads
再来看下安卓平台下面都指定哪些目录,
GetHomePath:
/data/user/0/com.embarcadero.FirstAidExpert_FMX_D11/files
GetDocumentsPath:
/data/user/0/com.embarcadero.FirstAidExpert_FMX_D11/files
GetSharedDocumentsPath:
/storage/emulated/0/Documents
GetLibraryPath:
/data/app/com.embarcadero.FirstAidExpert_FMX_D11-wlgPkLmXf6nZlWnaSyFsnw==/lib/arm
GetCachePath:
/data/user/0/com.embarcadero.FirstAidExpert_FMX_D11/cache
GetPublicPath:
/storage/emulated/0/Android/data/com.embarcadero.FirstAidExpert_FMX_D11/files
GetPicturesPath:
/storage/emulated/0/Android/data/com.embarcadero.FirstAidExpert_FMX_D11/files/Pictures
GetSharedPicturesPath:
/storage/emulated/0/Pictures
GetCameraPath:
/storage/emulated/0/Android/data/com.embarcadero.FirstAidExpert_FMX_D11/files/DCIM
GetSharedCameraPath:
/storage/emulated/0/DCIM
GetDownloadsPath:
/storage/emulated/0/Android/data/com.embarcadero.FirstAidExpert_FMX_D11/files/Download
GetSharedDownloadsPath:
/storage/emulated/0/Download
其中,
GetDocumentsPath就是应用的文档目录(私有存储空间),
如果你要保存文件,一般将文件保存在文档目录。
在Android下,GetHomePath和GetDocumentsPath都指向同一个目录
GetCachePath是缓存目录,可以保存比如临时下载的网络图片,
手机上的清除应用缓存就是清理的这个目录。
还有一些带Shared的目录,
GetSharedDocumentsPath、GetSharedPicturesPath、GetSharedCameraPath、GetSharedDownloadsPath,
这些则是可以与其它应用共享的目录,都保存在外部存储空间中,
其他应用可以访问到它们。
路径分隔符
需要注意的是,安卓系统下面路径分隔符和Windows下不一样,
Windows下是\,Anroid下面是/,
那么我们平时写代码要拼路径的时候,该怎么办呢?
Delphi已经帮我们考虑好了,
大家统一用常量PathDelim即可。
比如你要将当前登录用户的账号密码保存到Config.ini中,
那么你就可以通过TPath.GetDocumentsPath+PathDelim+’Config.ini’来访问它。
本文来自博客园,作者:{咏南中间件},转载请注明原文链接:https://www.cnblogs.com/hnxxcxg/p/16995637.html