在安卓应用开发揭秘第四章讲解使用模拟器发送短信并使用Toast显示短信息的时候,本人遇到过如下错误,现有一点个人的浅显理解:
错误:Couldn't open fd for content://settings/system/notification_sound Unable to to create media player
此错误导致Toast提示无法实现,后经过修改后依然会出现此错误,但是Toast提示信息出现了。本人个人猜测因为发短信会有短信提示声,需创建一个MediaPlayer播放声音,
但是未能打开错误提示信息上所指定的声音,所以会提示错误。也希望各位大神能指点下我的这个错误。现先讨论下Toast未能提示:
其中在书上的例子有两处缺陷,一处在SMSReceive中,一处在AndroidManifest中:
SMSReceive中,在onCreate方法之前需先定义个短信接收权限的变量SMS_RECEIVED并且赋值权限给变量,即:String SMS_RECEIVED = "android.provider.Telephony.SMS_RECEIVED" ;
然后在收到短信时自动触发onReceive方法时须先判断这个动作是否是接收短信的权限,即onReceive方法之前定义的短信接收权限。具体代码如下(蓝色字体为书上未有代码):
public class SMSReceiver extends BroadcastReceiver {
String SMS_RECEIVED = "android.provider.Telep