2017-06-22 100 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文件夾中加載它。我需要編輯我的答案。 –