从Delphi Firemonkey Android应用程序代码打开本地pdf文件
注:Delphi XE8,适用于Android 4.4.2的Firemonkey应用程序 我正试图从Firemonkey制作的Android应用程序中打开一个pdf文档,只打开Adobe Acrobat,但该文件没有打开,然后我在网上找到了几个网页,我尝试了其中的每一个,但没有一个有效 错误消息是 Adobe找不到要打开的文档 但是这个文档在一个公共文件夹中,我已经把它移到了另一个文件夹中,什么也没发生 我已经打开了其他文件夹中的图像,没有问题,我不明白 谁能给我一个解决方案吗从Delphi Firemonkey Android应用程序代码打开本地pdf文件,delphi,pdf,document,firemonkey,Delphi,Pdf,Document,Firemonkey,注:Delphi XE8,适用于Android 4.4.2的Firemonkey应用程序 我正试图从Firemonkey制作的Android应用程序中打开一个pdf文档,只打开Adobe Acrobat,但该文件没有打开,然后我在网上找到了几个网页,我尝试了其中的每一个,但没有一个有效 错误消息是 Adobe找不到要打开的文档 但是这个文档在一个公共文件夹中,我已经把它移到了另一个文件夹中,什么也没发生 我已经打开了其他文件夹中的图像,没有问题,我不明白 谁能给我一个解决方案吗 procedur
procedure TForm1.bttnAbrirClick(Sender: TObject);
var
NombreFichero,
RutaRaiz,
Ruta_Fichero,
Ruta_Fichero2 : String;
begin
// NombreFichero := 'Doc1.pdf';
// RutaRaiz := 'File:///storage/emulated/0/TabletBigger/Images/Articulos';
// RutaRaiz := '/storage/emulated/0/TabletBigger/Images/Articulos';
// RutaRaiz := '/storage/sdcard0/TabletBigger/Images/Articulos'; // en mi tablet
// Ruta_Fichero := System.IOUtils.TPath.Combine(RutaRaiz, NombreFichero);
// Ruta_Fichero := System.IOUtils.TPath.Combine(System.IOUtils.TPath.GetDownloadsPath, NombreFichero);
// Ruta_Fichero := System.IOUtils.TPath.Combine(System.IOUtils.TPath.GetSharedDownloadsPath, RutaRaiz);
NombreFichero := 'Introduccion.pdf';
Ruta_Fichero2 := '/storage/emulated/0/TabletBigger/Images/Articulos/Introduccion.pdf';
Ruta_Fichero := System.IOUtils.TPath.Combine(System.IOUtils.TPath.GetPublicPath, NombreFichero);
showtext.Text := Ruta_Fichero;
open(Ruta_Fichero);
// Ruta_Fichero := StringReplace(StringReplace( Ruta_Fichero, '\', '\\', [rfReplaceAll]), '"', '\"', [rfReplaceAll]) + '"';
//_system(PAnsiChar('Open ' + AnsiString(Ruta_Fichero)))
end;
procedure TForm1.Open(Ruta_Fichero : String);
var
Intent: JIntent;
begin
if FileExists(Ruta_Fichero) then
begin
Intent := TJIntent.Create;
Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
Intent.setDataAndType(StrToJURI(Ruta_Fichero), StringToJString('application/pdf'));
Intent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_CLEAR_TOP);
try
SharedActivity.startActivity(Intent);
Except
end;
end
else
_MessageDlg('El fichero no existe', mssInf);
end;
“解决它
我找到的好答案是:
作者:afzalali15
我将尝试上传整个代码
无论如何,谢谢。“解决它!我在以下网站上找到了一个好答案:afzalali15。