2017-08-25 117 views
0

下我是新與Android的發展和我下資源命名視頻文件夾中創建一個新的文件夾,然後我把視頻文件在它的應用程序使用。以下是我試圖使用視頻文件的代碼。不能找到文件夾和可變res文件夾

package com.example.touseef.myapplication; 

import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.ImageView; 
import android.widget.Toast; 
import android.widget.VideoView; 

public class MainActivity extends AppCompatActivity { 



@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    VideoView MyVideoView =(VideoView) findViewById(R.id.videoView); 
    MyVideoView.setVideoPath("android.resource://"+getPackageName()+"/"+R.videos.bang); 
    MyVideoView.start(); 
} 
} 

錯誤:它是給錯誤之前找不到變量R.videos,但後來我試圖清理和啓動機器人工作室後重建項目,它要求我與bang.mp4文件somelinking作爲文本文件,我說好。

現在,當我嘗試構建它時,bang.mp4文件在android studio中以文本形式打開,並且出現以下錯誤。

的內容,不得在序言

注:我不能看到該文件夾​​視頻水庫內的機器人工作室,但文件夾Android設備上查看文件確實存在,因爲我可以看到它在我的電腦中的FileEx plorer,它也有它的視頻文件。另外請注意,當我重新啓動我的項目時,我可以看到該文件夾​​,但是在android studio完成我的項目索引加載後,它再次消失。

回答

4

res/videos不是有效的資源文件夾。您需要將您的視頻放入res/raw,並從R.raw中查看。看看Android文檔的Providing Resources部分。一個重要的疑難雜症要記住,雖然:

但是,如果您需要訪問原始文件名和文件的層次,你可能會考慮在assets/目錄(而不是res/raw/)節省一些資源。 assets/中的文件沒有提供資源ID,因此只能使用AssetManager來閱讀它們。

3

創建原始文件夾內的res文件夾,並把您的視頻文件夾中

String uri = "android.resource://" + getPackageName() + "/" + R.raw.video; 
    Uri video = Uri.parse(uri); 
    VideoView videoView=(VideoView) findViewById(R.id.videoView); 
    videoView.setVideoURI(video); 
    videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 
     @Override 
     public void onPrepared(MediaPlayer mp) { 
      mp.setLooping(true); 
      videoView.start(); 
     } 
    }); 
+0

如果有用則接受這個answer.Thank你。 – Akash