Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从我的视图模型类访问xamarin forms项目中的android资产文件?_Xamarin_Xamarin.forms - Fatal编程技术网

如何从我的视图模型类访问xamarin forms项目中的android资产文件?

如何从我的视图模型类访问xamarin forms项目中的android资产文件?,xamarin,xamarin.forms,Xamarin,Xamarin.forms,我有一个xamarin表单解决方案,在这里我有3个项目,xamarin表单项目,android项目和iOS项目。我的andoird项目的assets文件夹中有一个文件,我希望可以将该文件从asset复制到personal文件夹中,以便对其进行编辑 我在一些地方读到可以使用AssetManager,但尽管我在Xamarin Forms项目的视图模型中使用了Xamarin.Forms,但我无法访问Xamarin.Forms.Context,因为这似乎是使用资产的方式 那么,如何将文件从资产文件夹复制

我有一个xamarin表单解决方案,在这里我有3个项目,xamarin表单项目,android项目和iOS项目。我的andoird项目的assets文件夹中有一个文件,我希望可以将该文件从asset复制到personal文件夹中,以便对其进行编辑

我在一些地方读到可以使用AssetManager,但尽管我在Xamarin Forms项目的视图模型中使用了Xamarin.Forms,但我无法访问Xamarin.Forms.Context,因为这似乎是使用资产的方式

那么,如何将文件从资产文件夹复制到视图模型中的个人文件夹呢

谢谢。

您可以使用

1.创建一个接口

public interface ISaveFileService
{
   void SaveFile();
}
2.在每个平台上实现接口(例如android)

在android项目中(可能需要请求一些权限):

3.在表单项目中调用它,如:

DependencyService.Get<ISaveFileService>().SaveFile();
DependencyService.Get().SaveFile();

使用依赖服务
DependencyService.Get<ISaveFileService>().SaveFile();