2017-06-22 99 views
0

我有一个视频放置在安卓如何找到URI的资产文件夹中的文件xamarin

Assets/LanguageResource/MyVideo.mp4 

Assets文件夹如何找到URI的资源文件

private void startVideo() 
     { 
      //Creating MediaController 
      mediaController = new MediaController(this); 
      mediaController.SetAnchorView(video); 
      video.SetMediaController(mediaController); 
      video.SetVideoURI(uri); 
      video.RequestFocus(); 
      video.Start(); 
     } 
+0

对于资源文件夹,它只是名称,Xamarin会自己找到它。试试“MyVideo.mp4”作为路径,也许这也适用于资产。 –

回答

0

你可以能够从Android的AssetManager中找到一个文件并直接获取文件流。

像变种BR =新BinaryReader在(Application.Context.Assets.Open( “LanguageResource/MyVideo.mp4”);

1

URL为资产文件应该是这样的:file:///android_asset/one.mp4

,你可以得到的文件,例如像这样的AbsolutePath

var file = new File(Android.Net.Uri.Parse("file:///android_asset/one.mp4").ToString()); 
var uri = file.AbsolutePath; 

和资产添加到您的项目会出现,就像一个文件系统可以通过应用程序使用AssetManager读取。

如果你想访问这个文件的流,你可以检查这样的官方文件:Using Android Assets

编辑:

对不起,问题是,我们不能从资产文件夹播放视频,你需要从原材料/资源文件夹中加载它。

+0

仍然收到文件未找到异常,资源也被标记为android资产。 – Devrath

+0

@Devrath,你确定你的视频的构建操作是'AndroidAsset'吗?奇怪的是,我测试过这段代码。 –

+0

@Devrath,o,对不起,我发现问题,该文件可以找到该网址,问题是从\ assets中播放.mp4文件是不可能的,您必须从\ raw文件夹中加载它。我需要编辑我的答案。 –

相关问题