title: UnsatisfiedLinkError for some users
body: <p>I have a released app that uses the Vuforia augmented reality SDK. For all my devices and the majority of users, the app is being used with no problems. However I've had a couple of ACRA automated reports of UnsatisfiedLinkErrors from users. I'm not sure how to diagnose further.</p>
  
  <p>In a static {} block in the main activity I have the following code:</p>
  
  <pre><code>static {
      loadLibrary("QCAR");
      loadLibrary("MYLIB");
  }
  </code></pre>
  
  <p>No issues there.. and then I also have a bunch of native side functions declared, the first of which is:</p>
  
  <pre><code>public native void setX(int x);
  
  Java_domain_mine_MainActivity_setX(JNIEnv *env, jobject, jint x) {
  </code></pre>
  
  <p>In the MainActivity's onCreate() method, a small amount of non-JNI related code is executed and then the very first JNI call which is setX(x) throws the UnsatisfiedLinkErrors exception.</p>
  
  <p>Now as I said, this code runs fine for me and most of my users so programatically I think the above is okay. In such circumstances, can I draw the conclusion 100% that the library with the setX function has not loaded properly? Or could it mean that the library just hasn't finished loading?</p>
  
  <p>I'm assuming that the static {} calls to load the libraries run on the main thread so the call to setX should be coming after the loadLibrary calls, and thus the libraries will have finished their attempt to load, either failing or succeeding but not the case of them still initializing on another thread.</p>
  
  <p>Has anybody else had similar problems, and if so how did you handle it?</p>
  
  <p>By the way, I can't see any similarities on the devices that had this problem. One was 2.3.6, the other 4.1.1. Both different makers...</p>