2017-08-25 2 views
0

: Ich bin mit Android Entwicklung, und ich erstellt einen neuen Ordner unter res Ordner mit dem Namen Videos und dann habe ich eine Videodatei in es in der App zu verwenden. Folgendes ist mein Code in Versuch, die Videodatei zu verwenden.Cant finden Ordner und Variable unter res Ordner

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(); 
} 
} 

ERROR: Es gab Fehler Ich habe versucht, zu reinigen und wieder aufgebaut Projekt nach dem Android-Studio starten, und es hat mich gebeten, nicht variabel R.videos vor, aber dann für somelinking mit bang.mp4 Datei finden als Textdokument und ich sagte ok.

Jetzt, wenn ich versuche, es zu bauen, öffnet sich die bang.mp4 Datei in einem Textformular in Android Studio und ich erhalte folgenden Fehler.

Inhalt ist nicht in Prolog erlaubt

Hinweis: Ich kann den Ordner Videos unter res Ordner innerhalb android Ansicht in Android Studio sehen, aber Ordner vorhanden ist, wie ich es sehen können in FileEx plorer in meinem PC und es hat auch diese Videodatei darin. Beachten Sie auch, dass ich den Ordner zwar neu starten kann, aber nach dem Laden von Android Studio mit der Indizierung meines Projekts wieder verschwindet.

Antwort

4

res/videos ist kein gültiger Ressourcenordner. Sie müssen Ihr Video in res/raw setzen und sich darauf beziehen von R.raw. Werfen Sie einen Blick auf den Abschnitt Providing Resources der Android-Dokumentation. Ein wichtiger Gotcha im Auge zu behalten, obwohl:

Wenn Sie jedoch Zugriff auf den Originaldateinamen und Dateihierarchie benötigen, könnten Sie einige Ressourcen im assets/ Verzeichnis speichern (statt res/raw/). Dateien in assets/ haben keine Ressourcen-ID, so dass Sie sie nur unter Verwendung von AssetManager lesen können.

3

erstellen roh Ordner in Ordner res und Ihre Videos in diesem Ordner abgelegt

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

Wenn es nützlich dann nehmen diese answer.Thank Sie. – Akash

Verwandte Themen