2017-02-16 188 views
0

当我运行Android应用程序时,它工作正常。当我更改一些数据并点击“保存更改”按钮时出现问题。然后再运行它显示旧数据的应用程序。Delphi - 在Android上部署和访问本地文件

我需要我的应用程序加载我保存的一个。

我用Delphi Xe8->多设备应用。 Using

对于Android,我远程路径设置为资产\内部 - > \资产\内部\ Deployment

Save Changes按钮代码:

procedure TForm1.Button1Click(Sender: TObject); 
begin 
CDS.SaveToFile(TPath.GetDocumentsPath + PathDelim + 'users.cds'); 
end; 

的OnCreate代码:

procedure TForm1.FormCreate(Sender: TObject); 
begin 
CDS.LoadFromFile(TPath.GetDocumentsPath + PathDelim + 'users.cds'); //Embarcadero\Studio\Projects\example\Client\Android\Debug\Client\assets\internal 
end; 
+0

您是否试过在表单(或调试器)中显示表达式'TPath.GetDocumentsPath + PathDelim +'users.cds''的值并确认其在'FormCreate'和'Button1Click'中相同? – MartynA

+0

是的,它们是相同的[FormCreate和ButtonClick]。 –

+0

那么,CDS的SaveToFile和LoadFromFile通常没有任何问题,但我只在Windows下使用它们。也许你的问题是Android特定的,与用户权限或什么有关。你能否将TMemo的内容保存到同一个文件夹并重新加载并保存更改等? – MartynA

回答

0
AppPath := TPath.GetHomePath; 
FileName := TPath.Combine(AppPath, 'users.cds');