Open symful opened 1 month ago
The net8.0-android
TFM is not supported by Godot. We use dotnet publish
to export .NET projects, but Android TFMs like net8.0-android
don't seem to work with that.
As far as I know, in Android projects dotnet publish
should copy the result of dotnet build
to $(PublishDir)
but that doesn't seem to work. As you can see in the screenshot you shared, the Scene.dll
file is not in the expected output directory.
But to be honest, even if the output files were copied to the expected directory, I'm not sure that'd be enough to make it work with how we're hosting the .NET runtime. I imagine net8.0-android
is designed to work with the dotnet/android host, which contains all the necessary pieces to make that work.
Tested versions
System information
Godot v4.3.stable.mono - Manjaro Linux #1 SMP PREEMPT_DYNAMIC Wed Aug 7 16:19:28 UTC 2024 - Wayland - GLES3 (Compatibility) - AMD Radeon Vega 3 Graphics (radeonsi, raven2, LLVM 18.1.8, DRM 3.57, 6.9.12-3-MANJARO) - AMD Ryzen 3 3250U with Radeon Graphics (4 Threads)
Issue description
I am forced to use net8.0-android because I need to have SkiaSharp.NativeAssets.Android for APK. When building APK, it emits this:
Though, if I use net8.0 it will be built. But libSkiaSharp dll won't be found (during using the application) [messages from logcat]
I expected from one of these, I can use SkiaSharp on Android.
Steps to reproduce
scene/
folderYou may change the
TargetFramework
in the folder tonet8.0
, compile it, then run in your phone to test it out for the second case I mentioned above.Minimal reproduction project (MRP)
https://github.com/symful/kaolin.flow-godot-skiasharp (not so minimal, but I don't have time to make one)