浏览代码

load .so libraries when the class loads (may fix a whole bunch of UnsatisfiedLinkError's reported by google play)

Wei Mingzhi 7 年之前
父节点
当前提交
e25d66fec3

+ 6 - 4
android/app/src/main/java/com/sdlpal/sdlpal/MainActivity.java

@@ -16,6 +16,12 @@ import android.net.Uri;
 import java.io.*;
 
 public class MainActivity extends AppCompatActivity {
+
+    static {
+        System.loadLibrary("SDL2");
+        System.loadLibrary("main");
+    }
+
     private static final String TAG = "sdlpal-debug";
 
     public static native void setAppPath(String basepath, String datapath, String cachepath);
@@ -100,10 +106,6 @@ public class MainActivity extends AppCompatActivity {
     }
 
     public void StartGame() {
-
-        System.loadLibrary("SDL2");
-        System.loadLibrary("main");
-
         String dataPath = getApplicationContext().getFilesDir().getPath();
         String cachePath = getApplicationContext().getCacheDir().getPath();
         String sdcardState = Environment.getExternalStorageState();

+ 5 - 0
android/app/src/main/java/com/sdlpal/sdlpal/SettingsActivity.java

@@ -24,6 +24,11 @@ import java.util.List;
 
 public class SettingsActivity extends AppCompatActivity {
 
+    static {
+        System.loadLibrary("SDL2");
+        System.loadLibrary("main");
+    }
+
     public static native boolean loadConfigFile();
     public static native boolean saveConfigFile();
     public static native boolean getConfigBoolean(String item, boolean defval);