zoukankan      html  css  js  c++  java
  • 每日日报

    音乐播放器框架

    如果把播放的逻辑放到activity 不靠谱 activity在音乐播放器中只是作为界面的作用
    所以控制音乐播放的逻辑 要放到service里
    Activity既能控制音乐播放的逻辑 又可以实现退出activity之后service不死掉 需要使用混合方式开启
    服务
    混合方式开启服务
    startService
    bindService 一起使用 先后顺序没有要求
    Activity代码
    public class MainActivity extends Activity{
      private MyConnectio nconn;
      private MyBinder musicControl;
      @Override
      protected void onCreate(Bundle savedInstanceState){
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);

    //通过bind方式开启音乐播放的服务
      Intent service=new Intent(this,MusicPlayerService.class);
      conn=newMyConnection();
    //①调用bindService
      bindService(service,conn,BIND_AUTO_CREATE);
    //混合方式开启服务
      startService(service);
    }

    public void pre(Viewv){
      musicControl.callPre();
    }
    public void play(Viewv){
      musicControl.callplay();
    }
    public void pause(Viewv){
      musicControl.callpause();
    }
    public void next(Viewv){
      musicControl.callNext();
    }

    private class MyConnection implements ServiceConnection{
    @Override
    public void onServiceConnected(Component Namename,IBinder service){
    //④service执行完onBind之后 返回值不为空 就会走这个方法 IBinder对象就
    是 onBind的返回值 获取到这个对象 就可以调用它的public方法
        musicControl=(MyBinder)service;
        musicControl.playHiFiMusic();IServiceiservice=(IService)service;
        iservice.callpause();
        iservice.callpause();
    }
      @Override
      public void onServiceDisconnected(ComponentName name){
      }
    }
    @Override
    protected void onDestroy(){
      super.onDestroy();
      unbindService(conn);
    }
    }
  • 相关阅读:
    .NET 2.0 中TextBox只读时在客户端赋值后的取值问题【转】
    ASP.NET跨页面传值技巧[转]
    ASP.NET "正在中止线程"错误原因及解决方法【转】
    JS的正则表达式【转】
    Web service入门 【转】
    WebForm中DataGrid的20篇经典文章【转】
    datagrid多层表头及datagrid列动态统计功能的实现 【转】
    在ASP.NET中使用Microsoft Word文档
    .net绝对技术资料 【转】
    Hashtable && HashMap
  • 原文地址:https://www.cnblogs.com/zhukaile/p/14836599.html
Copyright © 2011-2022 走看看