googlesamples / unity-jar-resolver

Unity plugin which resolves Android & iOS dependencies and performs version management
Other
1.29k stars 347 forks source link

[FR] Add X86_64 abi support for android from Unity version 2020.3.17f1 #461

Open chorobochrontochor opened 3 years ago

chorobochrontochor commented 3 years ago

Feature proposal

Unity 2020.3.17f1 now supports X86 (again) and X86-64 abis for android platform because of ChromeOS builds but android resolver wont allow us to resolve libraries for X86-64 architecture for now

google-oss-bot commented 3 years ago

This issue does not seem to follow the issue template. Make sure you provide all the required information.

davidrogers-unity commented 3 years ago

Here are the changes necessary to resolve this issue.

android-x86_64.diff.zip

chkuang-g commented 3 years ago

@chorobochrontochor Thank you for the reporting!

@davidrogers-unity Thank you for the suggestion! It looks like a relatively small change. Could you make a PR for this? Thank you! Also, let me verify if this change works for Unity 2017-2019.

Shawn

davidrogers-unity commented 3 years ago

@chkuang-g I was going to but I'm having trouble authenticating with GitHub via CLI. Retrying via Github Desktop...

https://github.com/googlesamples/unity-jar-resolver/pull/463

chkuang-g commented 3 years ago

Fantastic! I'll take a look in a bit

daz001 commented 3 years ago

Hello, I tried compiling the requested change and using the newly compiled resolver version I now see that in AndroidResolverDependencies.xml I correctly have (after deleting the file and force resolve):

<setting name="androidAbis" value="arm64-v8a,armeabi-v7a,x86,x86_64" />

In the build gradle file, it no longer excludes x86_64. But, if I extract the aab, I'm missing the extra lib files in: "base\lib\x86_64"

eg. all other lib directories also contain libFirebaseCppApp-8_3_0.so & libFirebaseCppAnalytics.so & one of my own libs. but x86_64 does not contain them - is there something else I am missing? @chkuang-g

Edit. I now see that this is actually due to the folders not being present in the srcaar file for firebase - damn

Side note: this issues presented itself to me as I was getting logs for missing libs on my dashboard due to devices that were previously using the arm64-v8a files are now using x86_64. I expected this folder to only be used by Chrome OS, but I see it being used on lot's of devices