MediaPlay播放Stream时出现error 38等错误的原因

困扰了两天的问题,终于在层层抽丝剥茧之后解决,最主要的原因还是自己加的调试代码太少,看来以后要注意:

问题的主要过程:

1、修改prepare--->prepareasync后出现(其实以前就有)

2、有的music可以

最中通过断点调试和查看打印信息找到根本原因:由于Stream的URL中存在空格,导致SetDataSource时出现异常

解决办法:

path = URLEncoder.encode(path,"utf-8").replace("+", "%20").replace("%3A", ":").replace("%2F", "/");

将path的空格通过编码替换为“+",然后替换“+”为“%20”即可。

-------------------------------------------------------------------------------------------------------------------------------------------

备注:最近遇到的问题在后续博客中一一总结

posted @ 2014-04-27 01:26  学习日积月累  阅读(871)  评论(0编辑  收藏  举报