我有一个项目,我曾经在Delphi西雅图创建,现在我想转移到Delphi Rio.我使用findfirst/findnext读取外部SD卡上的目录结构
i := findfirst(datadir + '*', faanyfile, ts);
Run Code Online (Sandbox Code Playgroud)
datadir变量包含一个有效的目录.在西雅图,代码工作正常(返回值i = 0),并在变量ts中返回第一个目录条目.现在,在Rio上编译相同的代码,我得到一个返回错误值i = 13(访问被拒绝).
在我的项目中设置了READ_EXTERNAL_STORAGE权限.
如果我将清单文件中的targetSdkVersion(在Rio中自动设置为26)硬编码到19(这是minSdkVersion),代码再次工作,即使在里约.所以显然处理SD卡访问的一些方法已经从sdk-level 19变为26?
有人提示吗?