code: private static void installLinuxPRNGSecureRandom()
              throws SecurityException {
          if (Build.VERSION.SDK_INT > VERSION_CODE_JELLY_BEAN_MR2) {
              // No need to apply the fix
              return;
          }
  
          // Install a Linux PRNG-based SecureRandom implementation as the
          // default, if not yet installed.
          Provider[] secureRandomProviders =
                  Security.getProviders("SecureRandom.SHA1PRNG");
          if ((secureRandomProviders == null)
                  || (secureRandomProviders.length < 1)
                  || (!LinuxPRNGSecureRandomProvider.class.equals(
                  secureRandomProviders[0].getClass()))) {
              Security.insertProviderAt(new LinuxPRNGSecureRandomProvider(), 1);
          }
  
          // Assert that new SecureRandom() and
          // SecureRandom.getInstance("SHA1PRNG") return a SecureRandom backed
          // by the Linux PRNG-based SecureRandom implementation.
          SecureRandom rng1 = new SecureRandom();
          if (!LinuxPRNGSecureRandomProvider.class.equals(
                  rng1.getProvider().getClass())) {
              throw new SecurityException(
                      "new SecureRandom() backed by wrong Provider: "
                              + rng1.getProvider().getClass());
          }
  
          SecureRandom rng2;
          try {
              rng2 = SecureRandom.getInstance("SHA1PRNG");
          } catch (NoSuchAlgorithmException e) {
              throw new SecurityException("SHA1PRNG not available", e);
          }
          if (!LinuxPRNGSecureRandomProvider.class.equals(
                  rng2.getProvider().getClass())) {
              throw new SecurityException(
                      "SecureRandom.getInstance(\"SHA1PRNG\") backed by wrong"
                              + " Provider: " + rng2.getProvider().getClass());
          }
      }
docs: Installs a Linux PRNG-backed {@code SecureRandom} implementation as the
  default. Does nothing if the implementation is already the default or if
  there is not need to install the implementation.
  
  @throws SecurityException if the fix is needed but could not be applied.