我有一个从res / raw播放视频的基本示例应用程序。我的问题是它在Android 4.0.3中不起作用(仅播放音频),但在3.2,4.3,4.4(仿真器)中工作。在一个真实的设备(micromax canvas 4与android 4.2.1)上,它说app已停止响应。 我的问题如何在所有Android上播放它,为什么它不响应我的移动? 我已经在stackoverflow上搜索没有正面结果.. 请帮助谢谢
这是我的xml文件
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
<VideoView
android:id="@+id/vidvew"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
</RelativeLayout>
这是我的.java文件
package com.example.tryit;
import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.VideoView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
VideoView vv = (VideoView) findViewById(R.id.vidvew);
String fileName = "android.resource://" + getPackageName() + "/" +R.raw.cs;
vv.setVideoURI(Uri.parse(fileName));
vv.start();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
答案 0 :(得分:0)
正确检查视频的编码。 Android只允许在应用程序中播放某些类型的文件类型。请参阅以下链接以获取更多信息 - http://developer.android.com/guide/appendix/media-formats.html