昨天给自己的app新增了一个功能:可以允许指定好友通过短信方式来打开自己手机的gps定位,并将位置信息上传至服务器。
因为定位功能在程序后台运行的时候是关闭状态的,所以通过app还是不能随时查看好友位置。
通过broadcast receive 来获取监控短信的接收,并且解析短信数据,符合的话即打开gps通知好友。
主要三个步骤:
1, AndroidManifest添加短信接收权限
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
之前忘了这一步,一直没有成功!
2, AndroidManifest添加组件注册
<receiver android:name="com.binqiang.broadcast.SmsBroadcastReceiver">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED"></action>
</intent-filter>
</receiver>
broadcast作为四大基本组件,需要注册
3, 自定义receiver类,分析短信并处理。<