title: Android : could not find org.spongycastle.util.io.pem.PemReader
body: <p>I am using spongycastle in my android code. code is working fine in android 5 and android 6 but in android 4 its showing the error : </p>
  
  <pre><code>java.lang.NoClassDefFoundError: org.spongycastle.util.io.pem.PemReader
  </code></pre>
  
  <p>Its failing at the time of initialization of PemReader in the below code :</p>
  
  <pre><code>    private PublicKey getPublicKey(AssetManager manager, String keyPath) {
      PublicKey key = null;
      try {
          final KeyFactory keyFactory = KeyFactory.getInstance(TicketVerifier.ENCRYPTION_ALGORITHM);
          InputStream stream = manager.open(keyPath);
          final PemReader reader = new PemReader(new InputStreamReader(stream));
          final byte[] pubKey = reader.readPemObject().getContent();
          reader.close();
          final X509EncodedKeySpec publicKeySpec = new X509EncodedKeySpec(pubKey);
          key = keyFactory.generatePublic(publicKeySpec);
      } catch (IOException e) {
          Log.e(TAG, "error verifying ticket", e);
      } catch (NoSuchAlgorithmException e) {
          Log.e(TAG, "error verifying ticket", e);
      } catch (InvalidKeySpecException e) {
          Log.e(TAG, "error verifying ticket", e);
      }
      return key;
  } 
  </code></pre>
  
  <p><strong>build.gradle</strong></p>
  
  <pre><code>apply plugin: 'com.android.application'
  
  android {
  compileSdkVersion 23
  buildToolsVersion "23.0.2"
  useLibrary 'org.apache.http.legacy'
  defaultConfig {
      applicationId "com.xx.xx.android"
      minSdkVersion 17
      targetSdkVersion 23
      versionCode 22
      versionName "5.0.0.22"
      multiDexEnabled true
  }
  
  dependencies {
  compile fileTree(dir: 'libs', include: ['*.jar'])
  testCompile 'junit:junit:4.12'
  testCompile 'org.robolectric:robolectric:3.0'
  compile 'com.android.support:appcompat-v7:23.3.0'
  compile ('com.viewpagerindicator:library:2.4.1'){
      exclude group: 'com.android.support', module: 'support-v4'
      exclude group: 'com.google.guava'
  }
  compile 'com.google.zxing:android-integration:2.2'
  compile 'com.google.zxing:core:2.3.0'
  compile ('com.google.android.gms:play-services:4.2.42@aar'){
      exclude group: 'com.android.support', module: 'support-v4'
      exclude group: 'com.google.guava'
  }
  compile 'com.google.guava:guava:17.0'
  compile 'org.altbeacon:android-beacon-library:2.1.3'
  compile 'com.fasterxml.jackson.core:jackson-core:2.2.3'
  compile 'com.fasterxml.jackson.core:jackson-annotations:2.2.3'
  compile 'com.fasterxml.jackson.core:jackson-databind:2.2.3'
  compile 'com.madgag:scprov-jdk15on:1.47.0.3'
  compile 'net.oauth.core:oauth:20100527'
  compile 'org.jsoup:jsoup:1.8.3'
  compile 'com.android.support:support-v4:23.3.0'
  }
  </code></pre>
  
  <p>Can anyone tell me how to handle it.</p>