认识Service----播放音乐小练习。

认识Service----播放音乐小练习。

初学Android,练习使用Service时通过这个播放音乐的例子来熟悉Service,具体知识点就不介绍了,书上讲的都超级详细,简单记录一下遇到的一些小问题。

1.跟着书上一遍敲下来,发现这个方法被小横线划掉了,看了一下原来是该方法在安卓4.0.3之后的版本删了,改用另一个方法onStartCommand()。
(ps.原来的onStart()好像也能用,,不过既然官方改了还是用最新的)

认识Service----播放音乐小练习。
认识Service----播放音乐小练习。

认识Service----播放音乐小练习。
2. 添加音乐资源(最好改为英文name)

认识Service----播放音乐小练习。

有些人导入进去发现自己的.mp3资源文件变成了乱码的文本(ps.mp3后缀未改变,但是能打开且变成了乱码):
认识Service----播放音乐小练习。

解决办法如下:

选择该文件改名,,将格式后缀改为一种未知的格式

认识Service----播放音乐小练习。

认识Service----播放音乐小练习。

更改完成后在raw资源双击该文件,会提示你选择打开方式,(好像第一次添加未知文件的时候也会有提示)
认识Service----播放音乐小练习。

文件模式改为原来的mp3格式,选择关联程序打开文件,即下面那个选项

认识Service----播放音乐小练习。
更改之后以后每次添加的该类文件都会使用这种打开方式。

3.全部敲完,Run一下。发现。。。。。。诶,咋又又问题

认识Service----播放音乐小练习。
认识Service----播放音乐小练习。

回控制台看了一下原因:
认识Service----播放音乐小练习。

有些时候我们使用Service的时要采用隐私启动的方式,可是Android 5.0一出来后。当中有个特性就是Service Intent must be explitict,也就是说从Android Lollipop版本号(Android 5.0)开始。service服务必须采用显示方式启动。
这是原代码:
认识Service----播放音乐小练习。
解决办法:设置要启动Service的Intent的Action和packageName
即将上面的代码改为:
认识Service----播放音乐小练习。
最后,一切正常,预期功能都OK。