基于stackoverflow中带有“intents”的代码片段:
F_Pdf_File:= GetHomePath + PathDelim + '_files' + PathDelim + 'lic.pdf';
Intent := TJIntent.Create;
Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
Intent.setDataAndType(StrToJURI( F_Pdf_File), StringToJString('application/pdf'));
SharedActivity.startActivity(Intent);
无法打开pdf文件,而不是在应用程序中,而不是在SolidExplorer中。 在其他示例中,我读到了关于在“sdcard / download”中打开文件的内容。
但是我的文件应该被下载(旁边:其中一些直接发送到StartUp)并且是应用程序的一部分(例如许可协议),不能放在下载或媒体等全局目录中:
同样重要的是,它们不会在重启时被删除。
抱歉,经过大量谷歌搜索后,我对位置和放置文件的位置越来越感到困惑......
答案 0 :(得分:1)
取决于您下载文件的方式。
永远不会在重新启动时删除文件。如果有人卸载了您的应用,您的应用文件将会被删除,具体取决于它们的位置。
您基本上有两个位置:内部存储和外部存储。如果设备的内部存储器中有外部存储设备,和设备也有SD卡插槽,则外部SD卡可以容纳媒体文件,但这些文件与您的应用程序非常分开。< / p>
getFilesDir()描述了内部存储的文件/子目录; getExternalFilesDir()与外部存储相同。 Environment.getExternalStorageDirectory()返回外部存储“root”。
性能不像空间那么大。内部存储更加有限。
我不确定您在代码中尝试做什么。要在设备上查看PDF,您需要一个可以查看PDF的应用程序,并且需要从任何位置下载PDF。查看DownloadManager以从Web下载:它下载到外部存储,但您可以将文件复制到内部存储,并在完成后删除外部副本。
我无法帮助您查看PDF。有几个应用程序可以做到这一点,但它并没有内置到Android中。