Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is Cordova Android 64-bit? #647

Open
jacobweber opened this issue Feb 1, 2019 · 9 comments
Open

Is Cordova Android 64-bit? #647

jacobweber opened this issue Feb 1, 2019 · 9 comments

Comments

@jacobweber
Copy link

@jacobweber jacobweber commented Feb 1, 2019

Google is warning developers that starting Aug 1 2019, all apps must be 64-bit.

Does Cordova already support this? If so, in what version?

@brodybits

This comment has been minimized.

Copy link
Contributor

@brodybits brodybits commented Feb 1, 2019

Google is warning developers that starting Aug 1 2019, all apps must be 64-bit.

https://android-developers.googleblog.com/2019/01/get-your-apps-ready-for-64-bit.html

Cordova itself fulfills the requirement since it does not include any NDK ("native") *.so library files, NDK jar files, or dependencies using NDK libraries in any form.

From a quick scan of all plugins maintained by Apache Cordova I could not find any plugins using NDK libraries in any form.

Thanks for asking.

@ASHBAW

This comment has been minimized.

Copy link

@ASHBAW ASHBAW commented Feb 4, 2019

Hi I am using cordova-sqlite-storage in one of my applications. After building my application (using ionic) I see the following associated .so libraries:

/platforms/android/app/build/intermediates/transforms/mergeJniLibs/release/0/lib/armeabi-v7a/libsqlc-native-driver.so
/platforms/android/app/build/intermediates/transforms/mergeJniLibs/release/0/lib/x86/libsqlc-native-driver.so
/platforms/android/app/build/intermediates/transforms/mergeJniLibs/release/0/lib/arm64-v8a/libsqlc-native-driver.so
/platforms/android/app/build/intermediates/transforms/mergeJniLibs/release/0/lib/armeabi/libsqlc-native-driver.so
/platforms/android/app/build/intermediates/transforms/mergeJniLibs/release/0/lib/x86_64/libsqlc-native-driver.so
/platforms/android/app/build/intermediates/transforms/mergeJniLibs/debug/0/lib/armeabi-v7a/libsqlc-native-driver.so
/platforms/android/app/build/intermediates/transforms/mergeJniLibs/debug/0/lib/x86/libsqlc-native-driver.so
/platforms/android/app/build/intermediates/transforms/mergeJniLibs/debug/0/lib/arm64-v8a/libsqlc-native-driver.so
/platforms/android/app/build/intermediates/transforms/mergeJniLibs/debug/0/lib/armeabi/libsqlc-native-driver.so
/platforms/android/app/build/intermediates/transforms/mergeJniLibs/debug/0/lib/x86_64/libsqlc-native-driver.so

I also use the cordova-plugin-globalization in another app and I see the following:

/plugins/cordova-plugin-globalization/src/blackberry10/native/simulator/libGlobalization.so
/plugins/cordova-plugin-globalization/src/blackberry10/native/device/libGlobalization.so
/node_modules/cordova-plugin-globalization/src/blackberry10/native/simulator/libGlobalization.so
/node_modules/cordova-plugin-globalization/src/blackberry10/native/device/libGlobalization.so

I know these are blackberry but still .so.

Should these .so be removed from each plugin?

Thanks

@rodrigograca31

This comment has been minimized.

Copy link

@rodrigograca31 rodrigograca31 commented Mar 8, 2019

Cordova itself fulfills the requirement since it include any NDK ("native") *.so library files, NDK jar files, or dependencies using NDK libraries in any form.

it include ? I think you meant it doesn't include am I right?
Please fix your reply...

@brodybits

This comment has been minimized.

Copy link
Contributor

@brodybits brodybits commented Mar 8, 2019

I think you meant it doesn't include am I right?

Yes

Please fix your reply...

Done. My bad. Thanks!

@brodybits

This comment has been minimized.

Copy link
Contributor

@brodybits brodybits commented Mar 8, 2019

To address a couple other questions:

Hi I am using cordova-sqlite-storage in one of my applications. After building my application (using ionic) I see the following associated .so libraries:
[...]

cordova-sqlite-storage is an external plugin, so let's please keep the discussion there.

I also use the cordova-plugin-globalization in another app and I see the following:

/plugins/cordova-plugin-globalization/src/blackberry10/native/simulator/libGlobalization.so
/plugins/cordova-plugin-globalization/src/blackberry10/native/device/libGlobalization.so
/node_modules/cordova-plugin-globalization/src/blackberry10/native/simulator/libGlobalization.so
/node_modules/cordova-plugin-globalization/src/blackberry10/native/device/libGlobalization.so

I know these are blackberry but still .so.

Since that is on a different platform, it would not be an issue on Android.

@suhail339

This comment has been minimized.

@pratikq23

This comment has been minimized.

Copy link

@pratikq23 pratikq23 commented Jun 14, 2019

https://www.npmjs.com/package/cordova-plugin-build-architecture solved my problem
I used this plugin in my project and created the apk, But when i unzip it, i can't see the lib/arm64-v8a & lib/x86_64.
Because according to this https://developer.android.com/distribute/best-practices/develop/64-bit on apk unzip it show these foloders.

@whoamien

This comment has been minimized.

Copy link

@whoamien whoamien commented Jun 25, 2019

After build, I found that there is still one so file
./cordova/node_modules/cordova-android/spec/fixtures/org.test.plugins.dummyplugin/src/android/jniLibs/x86/libnative.so

where this file come from? it presented when cordova-android is created and before any other plugin installed.

@dpogue

This comment has been minimized.

Copy link
Member

@dpogue dpogue commented Jun 25, 2019

That file is for unit tests within the cordova-android project. It is not part of your app's project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
8 participants
You can’t perform that action at this time.