1

インターネットからストリーミングするビデオを含むアプリを作成しましたが、そのパフォーマンスにはあまり感銘を受けません。SDカードからビデオをロードするためのコードを共有したい人はいますか?

ありがとう

4

2 に答える 2

3

このコードが役立つことを願っています

public class video extends Activity{

    VideoView video_view;
    String ex_name;

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.eccryption);
        video_view = (VideoView) findViewById(R.id.videoView1);

        ex_name = getIntent().getExtras().getString("video_name");

        MediaController mediaController = new MediaController(this);
        mediaController.setAnchorView(video_view);
        video_view.setMediaController(new MediaController(this));
        handler.sendEmptyMessage(1);

    }

    Handler handler = new Handler(){

        public void handleMessage(Message msg){

            int pos=msg.what;
            if (pos == 1){

                video_view.setVideoPath(Environment.getExternalStorageDirectory()+"/"+ex_name+".mp4");
                video_view.requestFocus();
                video_view.start();

                Log.d("Before Video Finish", "i m in before video finish");
                video_view.setOnCompletionListener(new OnCompletionListener() {
                    @Override
                    public void onCompletion(MediaPlayer mp) {
                        finish();
                    }
                });
            }
        }
    };

親愛なる友よ、このコードを使用してください!

于 2012-04-10T05:55:13.490 に答える
0

アクティビティを作成し、ビデオを再生する必要があるときに呼び出します。ビデオ パス (URL、SD カード、またはリソース) をインテントにバンドルできます。次に、 a のみを含む必要があるアクティビティでFrameLayout、次のVideoViewようなことを行います。

    Intent intent = getIntent();
    Bundle extras = intent.getExtras();
    if (extras != null) {
        mVideoPath = extras.getString(INTENT_EXTRA_URI);
        int resId = getResId(mVideoPath, R.raw.class);
                    String uriPath = null;
        if (mVideoPath.startsWith("http://") || mVideoPath.startsWith("https://")) {
            uriPath = mVideoPath;
        } else if (mVideoPatah.startsWith("/mnt/sdcard/")) {
            uriPath = mVideoPath;
        } else {
            int resId = getResId(mVideoPath, R.raw.class);
            uriPath = "android.resource://" + getResources().getResourcePackageName(resId) + "/" + resId;
        }
        mVideoView.setVideoURI(Uri.parse(uriPath));
        MediaController mediaController = new MediaController(this);
        mVideoView.setMediaController(mediaController);
        mVideoView.requestFocus();
        mVideoView.start();         
    } 
于 2012-04-10T05:49:51.853 に答える