@Override
 public boolean addMessageToConsole(int level, String message, int lineNumber, String sourceId) {
   if (mXWalkContentsClient == null) return false;
   ConsoleMessage.MessageLevel messageLevel = ConsoleMessage.MessageLevel.DEBUG;
   switch (level) {
     case LOG_LEVEL_TIP:
       messageLevel = ConsoleMessage.MessageLevel.TIP;
       break;
     case LOG_LEVEL_LOG:
       messageLevel = ConsoleMessage.MessageLevel.LOG;
       break;
     case LOG_LEVEL_WARNING:
       messageLevel = ConsoleMessage.MessageLevel.WARNING;
       break;
     case LOG_LEVEL_ERROR:
       messageLevel = ConsoleMessage.MessageLevel.ERROR;
       break;
     default:
       Log.w(TAG, "Unknown message level, defaulting to DEBUG");
       break;
   }
   return mXWalkContentsClient.onConsoleMessage(
       new ConsoleMessage(message, sourceId, lineNumber, messageLevel));
 }