100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > Android学习笔记之Broadcast Receiver

Android学习笔记之Broadcast Receiver

时间:2020-09-28 01:13:11

相关推荐

Android学习笔记之Broadcast Receiver

可程序间通信

注册通信,注销通信,发送消息

package com.jiahemeikang.helloandroid;import com.jiahemikang.service.EchoService;import com.jiahemikang.service.EchoService.EchoServiceBingder;import com.jikexuyua.broadcastreceiver.MyBC;import android.os.Bundle;import android.os.IBinder;import android.app.Activity;import ponentName;import android.content.Context;import android.content.Intent;import android.content.IntentFilter;import android.content.ServiceConnection;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;public class MainActivity extends Activity implements OnClickListener,ServiceConnection{private TextView tvResult ;private Intent serviceIntent;private Button btnStarAty1; private Button btnStarService; private Button btnStopService; private Button btnBingService; private Button btnUnBingService;private Button btnGetNum;private Button btnbroadcast;private Button regbroadcastButton;private Button btnunregbroadcastButton;public EchoService echoService = null;@Overrideprotected void onCreate(Bundle savedInstanceState) {serviceIntent = new Intent(this,EchoService.class);super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);tvResult = (TextView)findViewById(R.id.tvResult);btnStarAty1= (Button)findViewById(R.id.btnStartAty1);btnStarService= (Button)findViewById(R.id.btnStartService);btnStopService= (Button)findViewById(R.id.btnStopService);btnStarService.setOnClickListener(this);btnStopService.setOnClickListener(this);btnBingService= (Button)findViewById(R.id.bingdingservice);btnUnBingService= (Button)findViewById(R.id.unbingdingservice);btnBingService.setOnClickListener(this);btnUnBingService.setOnClickListener(this);btnGetNum= (Button)findViewById(R.id.btnGetNum);btnGetNum.setOnClickListener(this);btnbroadcast= (Button)findViewById(R.id.btnbroadcast);btnbroadcast.setOnClickListener(this);regbroadcastButton= (Button)findViewById(R.id.btnregbroadcast);regbroadcastButton.setOnClickListener(this);btnunregbroadcastButton= (Button)findViewById(R.id.btnunregbroadcast);btnunregbroadcastButton.setOnClickListener(this);btnStarAty1.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View v){Intent i = new Intent(MainActivity.this,Aty1.class);i.putExtra("txt","Hello aty1");startActivity(i);startActivityForResult(i,0);}});}@Overrideprotected void onActivityResult(int a,int b ,Intent i){if (i!=null) {String result = i.getStringExtra("result");tvResult.setText(result);}}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu);return true;}private final MyBC myBC = new MyBC();@Overridepublic void onClick(View v) {// TODO Auto-generated method stubswitch (v.getId()) {case R.id.btnStartService:startService(serviceIntent);break;case R.id.btnStopService:stopService(serviceIntent);break;case R.id.bingdingservice:bindService(serviceIntent,this,Context.BIND_AUTO_CREATE);break;case R.id.unbingdingservice:unbindService(this);echoService =null;break;case R.id.btnGetNum:if (echoService!=null) {System.out.print("当前服务的 数字为"+echoService.getCountNum());}break;case R.id.btnbroadcast:Intent i = new Intent(MyBC.ACTION);i.putExtra("txt", "消息");sendBroadcast(i);break;case R.id.btnregbroadcast:registerReceiver(myBC, new IntentFilter(MyBC.ACTION));break;case R.id.btnunregbroadcast:unregisterReceiver(myBC);break;default:break;}}@Overridepublic void onServiceConnected(ComponentName arg0, IBinder binder) {System.out.println("onServiceConnected");echoService = ((EchoService.EchoServiceBingder)binder).getService();}@Overridepublic void onServiceDisconnected(ComponentName arg0) {// TODO Auto-generated method stub }//onStart}

broadcast继承BroadcastReceiver

package com.jikexuyua.broadcastreceiver;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;public class MyBC extends BroadcastReceiver {public static final StringACTION = "com.jikexuyua.broadcastreceiver.intent.action.MyBC";public MyBC() {// TODO Auto-generated constructor stub }@Overridepublic void onReceive(Context arg0, Intent arg1) {// TODO Auto-generated method stubSystem.out.println("OnReceiver data"+arg1.getStringExtra("txt"));}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。