@Override
    protected void engineSetSeed(byte[] bytes) {
      try {
        OutputStream out;
        synchronized (sLock) {
          out = getUrandomOutputStream();
        }
        out.write(bytes);
        out.flush();
      } catch (IOException e) {
        // On a small fraction of devices /dev/urandom is not writable, primarily the Galaxy S4
        // running 4.2.2. Log and ignore.
        Log.w(TAG, "Failed to mix seed into " + URANDOM_FILE);
      } finally {
        mSeeded = true;
      }
    }
Whether this engine instance has been seeded. This is needed because
each instance needs to seed itself if the client does not explicitly
seed it.
java/com/google/android/apps/authenticator/util/PrngFixes.java