public void OnMessageReceived(String device, String message) {
   if (message.indexOf("SYNC") == 0) {
     try {
       String[] syncMessageSplit = message.split(":");
       int diff = Integer.parseInt(syncMessageSplit[1]) - mVideo.getCurrentPosition();
       Log.e(
           "master - slave diff",
           Integer.parseInt(syncMessageSplit[1]) - mVideo.getCurrentPosition() + "");
       if ((Math.abs(diff) > 100) && (mVideo.getCurrentPosition() - lastSynced > 1000)) {
         mVideo.seekTo(mVideo.getCurrentPosition() + diff + 300);
         lastSynced = mVideo.getCurrentPosition() + diff + 300;
       }
     } catch (IllegalStateException e) {
       // Do nothing; this can happen as you are quitting the app
       // mid video
     }
     mConnection.sendMessage(connectedDevice, "ACK");
   } else if (message.indexOf("START") == 0) {
     Log.e("received start", "0");
     mVideo.start();
   } else if (message.indexOf("ACK") == 0) {
     canSend = true;
   }
 }