大佬教程收集整理的这篇文章主要介绍了在Android上显示实时UDP或RTP流(多播),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经尝试从播放器(Daroon播放器,PlayStorE)读取它,它运行良好,所以我认为我的愚蠢问题不是由于广播.
>在ACTION_VIEW中使用新的Intent,Android会选择可以查看内容的应用程序;
>使用MediaPlayer类和VideoView.
我有两个问题,让我们从最重要的开始:
– 对于上述两种解决方案,都存在一个问题:我到处读到MediaPlayer只支持http / s和rtsp协议,是吗?对于动作视图,这是我之前尝试过的:
Uri streamURL = Uri.parse("rtp://230.0.0.11:1234"); Intent streamIntent = new Intent(Intent.ACTION_VIEW); streamIntent.setData(streamURL); // streamIntent.setDataAndType(streamURL,"video/*"); startActivity(streamIntent);
这是LogCat:
07-11 00:25:58.119: D/AndroidRuntime(2659): ShutTing down VM 07-11 00:25:58.119: W/dalvikvm(2659): threadid=1: thread exiTing with uncaught exception (group=0x40015560) 07-11 00:25:58.129: E/AndroidRuntime(2659): FATAL EXCEPTION: main 07-11 00:25:58.129: E/AndroidRuntime(2659): java.lang.IllegalStateException: Could not execute method of the activity 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.view.View$1.onClick(View.java:2144) 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.view.View.performClick(View.java:2485) 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.view.View$PerformClick.run(View.java:9080) 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.os.Handler.handleCallBACk(Handler.java:587) 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.os.Handler.dispatchmessage(Handler.java:92) 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.os.Looper.loop(Looper.java:123) 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.app.ActivityThread.main(ActivityThread.java:3683) 07-11 00:25:58.129: E/AndroidRuntime(2659): at java.lang.reflect.Method.invokeNative(Native Method) 07-11 00:25:58.129: E/AndroidRuntime(2659): at java.lang.reflect.Method.invoke(Method.java:507) 07-11 00:25:58.129: E/AndroidRuntime(2659): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 07-11 00:25:58.129: E/AndroidRuntime(2659): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 07-11 00:25:58.129: E/AndroidRuntime(2659): at dalvik.system.NativeStart.main(Native Method) 07-11 00:25:58.129: E/AndroidRuntime(2659): Caused by: java.lang.reflect.InvocationTargetException 07-11 00:25:58.129: E/AndroidRuntime(2659): at java.lang.reflect.Method.invokeNative(Native Method) 07-11 00:25:58.129: E/AndroidRuntime(2659): at java.lang.reflect.Method.invoke(Method.java:507) 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.view.View$1.onClick(View.java:2139) 07-11 00:25:58.129: E/AndroidRuntime(2659): ... 11 more 07-11 00:25:58.129: E/AndroidRuntime(2659): Caused by: android.content.ActivityNotFoundException: No Activity found to handlE intent { act=android.intent.action.VIEW dat=rtp://230.0.0.11:1234 } 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.app.instrumentation.checkStartActivityResult(instrumentation.java:1409) 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.app.instrumentation.execStartActivity(instrumentation.java:1379) 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.app.Activity.startActivityForResult(Activity.java:2827) 07-11 00:25:58.129: E/AndroidRuntime(2659): at android.app.Activity.startActivity(Activity.java:2933) 07-11 00:25:58.129: E/AndroidRuntime(2659): at fr.infosat.tv@R_696_9363@y.MainActivity.listStream(MainActivity.java:35) 07-11 00:25:58.129: E/AndroidRuntime(2659): ... 14 more 07-11 00:26:00.079: I/Process(2659): Sending signal. PID: 2659 SIG: 9
我的理解是错误InvocationTargetException,通常是由于类名的错误,无法在这里直接解决,因为我没有在startActivity中调用任何类.但是我觉得我的语法不正确,也许这个方法不适合使用.当然,如果我取消注释setDataAndType行,它会显示相同的错误.
当我启动我的隐含意图时,我注意到了错误.
>我的第二个问题是Daroon Player在我的机顶盒上运行良好,我可以在电视上看到我的流.但是当我尝试从Eclipse模拟器启动它时,即使我可以从VLC播放它也不会播放…模拟器是否足够强大,可以读取这些流?
我希望你有一些关于如何解决这个问题的线索!
以上是大佬教程为你收集整理的在Android上显示实时UDP或RTP流(多播)全部内容,希望文章能够帮你解决在Android上显示实时UDP或RTP流(多播)所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。