title: How to secure string in Android Application?
body: <p>How to secure string in Android Application ?</p>
  
  <h2>Options:</h2>
  
  <ol>
  <li><p><strong>ProGuard:</strong> It does not secure string?
  <a href="https://stackoverflow.com/questions/10220069/does-proguard-work-to-obfuscate-static-string-constants">Does proguard work to obfuscate static string constants?</a></p></li>
  <li><p><strong>Encrypt String:</strong> for Encryption I need to store encryption key (string) some where and again it's same issue, how to secure encryption key.</p></li>
  <li><p><strong>Fetch string from web service:</strong> But this solution will not work for me, as app don't have internet requirement/access that's requirement/business decision.</p></li>
  <li><p><strong>NDK:</strong> write c file which contain string and return using JNI but I found Hex-Ray decompile to decompile *.so file 
  <a href="https://www.hex-rays.com/index.shtml" rel="noreferrer">https://www.hex-rays.com/index.shtml</a></p></li>
  </ol>
  
  <p>================================================</p>
  
  <p>Function in C</p>
  
  <pre><code>jstring Java_com_abc_xyz_getString(JNIEnv* env, jobject javaThis) {
    return (*env)-&gt;NewStringUTF(env, "Hello String");
  }
  </code></pre>
  
  <p>====================================</p>
  
  <p>Please suggest a best option to secure string in Android SDK/NDK.</p>