概述
写这个东西只是为了练手,拍砖随意。反正自己也是菜鸟。
微信/QQ在退出主界面之后还是会一直监听消息。如何实现呢?
一下做的测试,监听为用户的新信息。
首先:建立主程序界面
- <Button
- android:id="@+id/button1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="start" />
- <Button
- android:id="@+id/button2"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="stop" />
两个button。
其次:绑定监听事件
- start.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- System.out.println("ooooo");
- startService(new Intent("com.duduli.li.My"));
- }
- });
- stop.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- stopService(new Intent("com.duduli.li.My"));
- }
- });
这里的intent需要在manifest中进行注册。
- <service android:name=".Myservice">
- <intent-filter>
- <action android:name="com.duduli.li.My"/>
- <category android:name="android.intent.category.DEFAULT"/>
- </intent-filter>
- </service>
service类方法:
- public class Myservice extends Service{
- @Override
- public IBinder onBind(Intent intent) {
- // TODO Auto-generated method stub
- System.out.println("on bind");
- return null;
- }
- @Override
- public void onCreate() {
- // TODO Auto-generated method stub
- super.onCreate();
- System.out.println("on create");
- }
- @Override
- public void onStart(Intent intent, int startId) {
- // TODO Auto-generated method stub
- super.onStart(intent, startId);
- System.out.println("on start");
- new Test();
- }
- }
onstart方法中有个Test的实力,这个实力就是一个BroadcastReceiver用来监听来电或来信息。
- public class Test extends BroadcastReceiver {
- @Override
- public void onReceive(Context context, Intent intent) {
- // TODO Auto-generated method stub
- if(intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")){
- System.out.println(System.currentTimeMillis());
- System.out.println("broadcast begin");
- }
- }
- }
这个broadcastreceiver也需要在manifest中进行注册/
- <receiver android:name=".Test">
- <intent-filter>
- <action android:name="android.provider.Telephony.SMS_RECEIVED"/>
- </intent-filter>
- </receiver>
action对应的就是收到新信息。
最后
以上就是冷艳宝马为你收集整理的【android】利用service监听来电或来信息的全部内容,希望文章能够帮你解决【android】利用service监听来电或来信息所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复