Я думаю о проблеме в ответной части, но не понял, где искать.Я пытаюсь воспроизвести зашифрованное видео с помощью videoView с помощью nanohttpd.but, он не работает, не знаю почему?
Я получаю ошибку при воспроизведении видео:
D/MediaPlayer: Не удалось открыть файл на стороне клиента, пытаясь стороне сервера
MediaPlayer: ошибка (1, -2147483648)E/медиаплеера: Ошибка (1, -2147483648)
мишень 23
SDKмин 15
SDKУстройство для испытания = апи 19 KitKat
AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission>
MainActivity.java
super.onCreate (savedInstanceState); setContentView (R.layout.activity_main);
videoView = (VideoView) findViewById(R.id.videoview);
Log.i(TAG,String.valueOf(Environment.getExternalStorageDirectory()));
videoHttpServer = new VideoHttpServer();
try{
videoHttpServer.start();
}catch (Exception exception){
Log.i(TAG,String.valueOf(exception.getMessage()));
}
File file = new File("/sdcard/a1.mp4");
Log.i(TAG,String.valueOf(file.exists()));
Uri uri = Uri.parse("http://127.0.0.1:8089/a1.mp4");
videoView.setVideoURI(uri);
videoView.setMediaController(new MediaController(MainActivity.this));
videoView.start();
}
public class VideoHttpServer extends NanoHTTPD {
public VideoHttpServer() {
super(8089);
}
@Override
public Response serve(String uri, Method method,
Map<String, String> header, Map<String, String> parameters,
Map<String, String> files) {
String answer = "";
FileInputStream fis = null;
try {
File file = new File("/sdcard/a1.mp4");
fis = new FileInputStream(file);
abc = new File(Environment.getExternalStorageDirectory()+"a1.mp4");
} catch (Exception e) {
// TODO Auto-generated catch block
Log.i(TAG,String.valueOf(e.getMessage()));
}
return new NanoHTTPD.Response(Response.Status.OK, "video/mp4", fis,1);
}
}
}
Сервер работает в android.not проблема с сервером. –
, и я использую его как локальный сервер. –