안드로이드 스튜디오에서 패키지에 미디어 파일들을 넣고 코드로 파일 경로 불러올 때가 있다.
일단 res 폴더안에 raw가 없을 건데 raw 폴더는 새로 만든다.
https://www.google.co.kr/search?q=android+studio+create+raw+folder&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwi6hrvevb3XAhULI5QKHdHGC7oQ_AUICygC&biw=1508&bih=918
어렵지 않은 거라 구글링에도 참 많이 나온다.
그런 후에 raw 폴더에 마우스 오른쪽 누르면 Show in Explorer 있을 것이고 누르면 윈도우 탐색기가 열린다.
그 안에 미디어 파일들을 넣으면 안드로이드 스튜디오에서도 들어간게 보인다.
이걸 그대로 코드에서 파일명으로 불러오는 것보다 id 값으로 불러오는데 아래 코드를 public class MainActivity extends AppCompatActivity{ 이런 클래스 메인 클래스 코드가 있고 그 안에 넣어준다.
public int getRawResIdByName(String resName) { String pkgName = this.getPackageName(); // Return 0 if not found. int resID = this.getResources().getIdentifier(resName, "raw", pkgName); Log.i("AndroidVideoView", "Res Name: " + resName + "==> Res ID = " + resID); return resID; }
이제 파일명 불러오는 곳에 아래처럼 쓴다.
int id = getRawResIdByName('mytestmovie'); Uri video = Uri.parse("android.resource://" + getPackageName() + "/" + id);
raw 폴더안에 mytestmovie.mp4 를 불러오는 코드이다.