@@ -861,47 +861,67 @@ private void copyImportedLibs(final File libsFolder,
861
861
final File assetsFolder ) throws IOException {
862
862
for (Library library : getImportedLibraries ()) {
863
863
// Add each item from the library folder / export list to the output
864
- for (File exportFile : library .getAndroidExports ()) {
865
- String exportName = exportFile .getName ();
864
+ for (File exportFile : library .getApplicationExports ("armeabi" )) {
865
+ copyImportedLib (libsFolder , mainFolder , assetsFolder , exportFile );
866
+ }
867
+ for (File exportFile : library .getApplicationExports ("armeabi-v7a" )) {
868
+ copyImportedLib (libsFolder , mainFolder , assetsFolder , exportFile );
869
+ }
870
+ for (File exportFile : library .getApplicationExports ("x86" )) {
871
+ copyImportedLib (libsFolder , mainFolder , assetsFolder , exportFile );
872
+ }
873
+ for (File exportFile : library .getApplicationExports ("arm64-v8a" )) {
874
+ copyImportedLib (libsFolder , mainFolder , assetsFolder , exportFile );
875
+ }
876
+ for (File exportFile : library .getApplicationExports ("x86_64" )) {
877
+ copyImportedLib (libsFolder , mainFolder , assetsFolder , exportFile );
878
+ }
879
+ }
880
+ }
881
+
882
+
883
+ private void copyImportedLib (final File libsFolder ,
884
+ final File mainFolder ,
885
+ final File assetsFolder ,
886
+ final File exportFile ) throws IOException {
887
+ String exportName = exportFile .getName ();
866
888
867
- // Skip the GVR and ARCore jars, because gradle will resolve the dependencies
868
- if (appComponent == VR && exportName .toLowerCase ().startsWith ("sdk" )) continue ;
869
- if (appComponent == AR && exportName .toLowerCase ().startsWith ("core" )) continue ;
870
-
871
- if (!exportFile .exists ()) {
872
- System .err .println (AndroidMode .getTextString ("android_build.error.export_file_does_not_exist" , exportFile .getName ()));
873
- } else if (exportFile .isDirectory ()) {
874
- // Copy native library folders to the correct location
875
- if (exportName .equals ("armeabi" ) ||
876
- exportName .equals ("armeabi-v7a" ) ||
877
- exportName .equals ("x86" ) ||
878
- exportName .equals ("arm64-v8a" ) ||
879
- exportName .equals ("x86_64" ))
880
- {
881
- Util .copyDir (exportFile , new File (libsFolder , exportName ));
882
- }
883
- // Copy jni libraries (.so files) to the correct location
884
- else if (exportName .equals ("jniLibs" )) {
885
- Util .copyDir (exportFile , new File (mainFolder , exportName ));
886
- }
887
- else {
888
- // Copy any other directory to the assets folder
889
- Util .copyDir (exportFile , new File (assetsFolder , exportName ));
890
- }
891
- } else if (exportName .toLowerCase ().endsWith (".zip" )) {
892
- // As of r4 of the Android SDK, it looks like .zip files
893
- // are ignored in the libs folder, so rename to .jar
894
- System .err .println (AndroidMode .getTextString ("android_build.error.zip_files_not_allowed" , exportFile .getName ()));
895
- String jarName = exportName .substring (0 , exportName .length () - 4 ) + ".jar" ;
896
- Util .copyFile (exportFile , new File (libsFolder , jarName ));
889
+ // Skip the GVR and ARCore jars, because gradle will resolve the dependencies
890
+ if (appComponent == VR && exportName .toLowerCase ().startsWith ("sdk" )) return ;
891
+ if (appComponent == AR && exportName .toLowerCase ().startsWith ("core" )) return ;
892
+
893
+ if (!exportFile .exists ()) {
894
+ System .err .println (AndroidMode .getTextString ("android_build.error.export_file_does_not_exist" , exportFile .getName ()));
895
+ } else if (exportFile .isDirectory ()) {
896
+ // Copy native library folders to the correct location
897
+ if (exportName .equals ("armeabi" ) ||
898
+ exportName .equals ("armeabi-v7a" ) ||
899
+ exportName .equals ("x86" ) ||
900
+ exportName .equals ("arm64-v8a" ) ||
901
+ exportName .equals ("x86_64" ))
902
+ {
903
+ Util .copyDir (exportFile , new File (libsFolder , exportName ));
904
+ }
905
+ // Copy jni libraries (.so files) to the correct location
906
+ else if (exportName .equals ("jniLibs" )) {
907
+ Util .copyDir (exportFile , new File (mainFolder , exportName ));
908
+ }
909
+ else {
910
+ // Copy any other directory to the assets folder
911
+ Util .copyDir (exportFile , new File (assetsFolder , exportName ));
912
+ }
913
+ } else if (exportName .toLowerCase ().endsWith (".zip" )) {
914
+ // As of r4 of the Android SDK, it looks like .zip files
915
+ // are ignored in the libs folder, so rename to .jar
916
+ System .err .println (AndroidMode .getTextString ("android_build.error.zip_files_not_allowed" , exportFile .getName ()));
917
+ String jarName = exportName .substring (0 , exportName .length () - 4 ) + ".jar" ;
918
+ Util .copyFile (exportFile , new File (libsFolder , jarName ));
897
919
898
- } else if (exportName .toLowerCase ().endsWith (".jar" )) {
899
- Util .copyFile (exportFile , new File (libsFolder , exportName ));
920
+ } else if (exportName .toLowerCase ().endsWith (".jar" )) {
921
+ Util .copyFile (exportFile , new File (libsFolder , exportName ));
900
922
901
- } else {
902
- Util .copyFile (exportFile , new File (assetsFolder , exportName ));
903
- }
904
- }
923
+ } else {
924
+ Util .copyFile (exportFile , new File (assetsFolder , exportName ));
905
925
}
906
926
}
907
927
0 commit comments