提示你该服务已经绑定过了,你可以设置个是否绑定的标志来标识,已经绑定了就不执行bindService
另外,服务不会起多个的,可以去百度下service的

解决方案 »

  1.   

    第一个问题,没看出来。但是第二个。你可以每次走到启动副的时候判断服务是否启动了,没有就启动,悠久不启动。
    代码
    // 判断服务是否开启
    public static boolean isServiceRunning(Context mContext, String className) { boolean isRunning = false;
    ActivityManager activityManager = (ActivityManager) mContext
    .getSystemService(Context.ACTIVITY_SERVICE);
    List<ActivityManager.RunningServiceInfo> serviceList = activityManager
    .getRunningServices(30); if (!(serviceList.size() > 0)) {
    return false;
    } for (int i = 0; i < serviceList.size(); i++) {
    if (serviceList.get(i).service.getClassName().equals(className) == true) {
    isRunning = true;
    break;
    }
    }
    return isRunning;
    }调用
    isServiceRunning(MainActivity.this, myServise.class.getName())
      

  2.   

    在destory的时候unbindservice,在oncreate的时候,判断是否绑定service,未绑定再绑定service
      

  3.   


    我调试了一下,我发现你这个方法 不成功的  是不是不是getName  是GetClass啊
      

  4.   

    我知道怎么回事了,@Override
        protected void onDestroy(){
            super.onDestroy();
            unbindService(serviceconnection);
        }
    解决了
      

  5.   

    把上下文换成你在的activity,服务换成你的,应该是可以的。我在广播你判断都起作用了