-
常用系统服务查看全部
-
常用系统服务查看全部
-
服务的两种启动方式: 1.通过startService(Intent intent)启动,stopService(Intent intent)停止,比较简单。服务启动后与启动源无关,也无返回服务本身。需注意要在配置文件中注册服务。 2.通过bindService(Intent intent,ServiceConnection conn,int flags)绑定服务启动,unbindService(ServiceConnection conn)去绑定停止,该方式可以返回服务本身,与启动源相关。 具体步骤: 1)Intent intent = new Intent(上下文, 目标服务名.class); bindService(intent, conn, Service.BIND_AUTO_CREATE);//绑定 2)在自定义的服务类中通过自定义一个内部类: public class MyBinder extends Binder { public MyBindService getService() { return MyBindService.this;// 获取服务 } }来返回服务本身 同时在自定义服务类重新父类Service的方法: public IBinder onBind(Intent intent) { // TODO Auto-generated method stub return new MyBinder(); } 该方法可返回服务本身. 3)初始化ServiceConnection接口,在接口方法中重写方法 public void onServiceConnected(ComponentName name, IBinder service) { myBindService = ((MyBinder)service).getService();//大类转化为自身的小类,获取内部类中的方法,从而获得服务本身 } 4)在自定义的继承于Servic类的类中,添加需要的方法,在启动Service的Activity中可以直接调用服务中的方法。查看全部
-
特点!查看全部
-
服务先新建一个类继承service并重新回调方法和抽象方法。 启动服务,作为组件媒介intent是不可少的 Intent intent1=new Intent(Mainactivity.this,MyStartService.class); startService(intent1);//启动服务 stopService(intent1);//关闭服务查看全部
-
各自的特点查看全部
-
生命周期!查看全部
-
类型!查看全部
-
定义!查看全部
-
定义!查看全部
-
发送有序广播:可以截断广播,在广播间传送数据:截断abortBroadCast(); sendOrderedBrodcast(intent,null) Bundle bundle =new Bundle(); bundle.putString("test","有序广播发送数据"); setResultExtras(bundle); 发送异步广播: sendStickyBroadcast(intent3);可以先发送后注册接收器 在此处动态注册接收器 在完成后要将动态注册的接收器销毁:unregisterReceiver(receiver)查看全部
-
分类特点查看全部
-
发送广播: Intent intent=new Intent() intent.putExtra("msg","这是普通广播") Intent.setAction("BC_One");//确保Intent的唯一性 sendBroadcast(intent) 接受广播: 1.继承BroadcastReceiver,实现其方法onReceiver() String s=intent.getStringExtra("msg"); System.out.println("接收到消息"+s); 注册列表里(静态注册): <receiver android:name="包名加类名"> <intent-filter android:proprity="100"><action android:name="类名"/> 动态注册方法: IntentFilter intentfilter=new IntentFilter("BC_One"); BC2 bc2=new BC2(); registerReceiver(bc2,intentfilter); 截断广播 abortBroadcast查看全部
-
SharedPreferences 存储方式查看全部
-
SQliteBase查看全部
举报
0/150
提交
取消