public List<CommandInfo> getCommands() {
   if (inited) {
     try {
       return mControlService.getCommand();
     } catch (RemoteException e) {
       LogManager.printStackTrace(e);
       init();
     }
   } else {
     init();
   }
   return null;
 }
  public boolean sendCommand(String info) {

    if (inited) {
      try {
        return mControlService.sendCommand(info);

      } catch (RemoteException e) {
        LogManager.printStackTrace(e);
        init();
      }
    } else {
      init();
    }
    return false;
  }
        @Override
        public void onServiceConnected(ComponentName name, IBinder service) {
          LogManager.e("dog service connect sucess");
          mControlService = IDogControlService.Stub.asInterface(service);
          try {
            mControlService.setCommandChangeListen(mChangeListener);
            LogManager.e("set listenr " + mChangeListener);
          } catch (RemoteException e1) {
            // e1.printStackTrace();
            LogManager.printStackTrace(e1);
          }
          inited = true;

          if (mOnGetDevAdd != null) {
            mOnGetDevAdd.onGetAdd(null);
          }
        }