Browse Source

Android: Added additional error messages for APK expansion file use.

Philipp Wiesemann 9 years ago
parent
commit
625d39b164
1 changed files with 14 additions and 4 deletions
  1. 14 4
      android-project/src/org/libsdl/app/SDLActivity.java

+ 14 - 4
android-project/src/org/libsdl/app/SDLActivity.java

@@ -703,8 +703,15 @@ public class SDLActivity extends Activity {
                 return null; // no expansion use if no patch version was set
             }
 
-            Integer mainVersion = Integer.valueOf(mainHint);
-            Integer patchVersion = Integer.valueOf(patchHint);
+            Integer mainVersion;
+            Integer patchVersion;
+            try {
+                mainVersion = Integer.valueOf(mainHint);
+                patchVersion = Integer.valueOf(patchHint);
+            } catch (NumberFormatException ex) {
+                ex.printStackTrace();
+                throw new IOException("No valid file versions set for APK expansion files", ex);
+            }
 
             try {
                 // To avoid direct dependency on Google APK expansion library that is
@@ -719,6 +726,7 @@ public class SDLActivity extends Activity {
                 ex.printStackTrace();
                 expansionFile = null;
                 expansionFileMethod = null;
+                throw new IOException("Could not access APK expansion support library", ex);
             }
         }
 
@@ -727,12 +735,14 @@ public class SDLActivity extends Activity {
         try {
             fileStream = (InputStream)expansionFileMethod.invoke(expansionFile, fileName);
         } catch (Exception ex) {
+            // calling "getInputStream" failed
             ex.printStackTrace();
-            fileStream = null;
+            throw new IOException("Could not open stream from APK expansion file", ex);
         }
 
         if (fileStream == null) {
-            throw new IOException();
+            // calling "getInputStream" was successful but null was returned
+            throw new IOException("Could not open stream from APK expansion file");
         }
 
         return fileStream;