SkiaSharp.Extended icon indicating copy to clipboard operation
SkiaSharp.Extended copied to clipboard

[BUG] Android 16 KB page sizes warning

Open Grzegorz1223 opened this issue 7 months ago • 1 comments

Description

When compiling an app with the package SkiaSharp.Extended.UI.Maui, there is the following compilation warning:

Android 16 will require 16 KB page sizes, shared library 'libHarfBuzzSharp.so' does not have a 16 KB page size. Please inform the authors of the NuGet package 'HarfBuzzSharp.NativeAssets.Android' version '8.3.0' which contains 'runtimes/android-x64/native/libHarfBuzzSharp.so'. See https://developer.android.com/guide/practices/page-sizes for more details.

Android 16 will require 16 KB page sizes, shared library 'libSkiaSharp.so' does not have a 16 KB page size. Please inform the authors of the NuGet package 'SkiaSharp.NativeAssets.Android' version '3.116.0' which contains 'runtimes/android-x64/native/libSkiaSharp.so'. See https://developer.android.com/guide/practices/page-sizes for more details.

Code

Just compiling with the latest stable version of SkiaSharp.Extended.UI.Maui

Expected Behavior

No compilation warning

Actual Behavior

A warning appears

Basic Information

  • Version with issue: 2.0.0
  • Last known good version: None
  • IDE: Visual Studio
  • Platform Target Frameworks:
    • Android: All
    • iOS: All
  • Target Devices:
    • All

Grzegorz1223 avatar Apr 28 '25 21:04 Grzegorz1223

@mattleibow since the fix is merged, when is it expected that a new stable version will be released?

Grzegorz1223 avatar May 05 '25 16:05 Grzegorz1223

@mattleibow since the fix is merged, when is it expected that a new stable version will be released?

@mattleibow as we are not allowed in our current project to use pre-release (preview) versions of a nuget, we also need a stable release with this change.

de-preut avatar Jun 23 '25 12:06 de-preut

@mattleibow with Android 16 already out for 2 weeks, this really starts to become a pressing issue.

Grzegorz1223 avatar Jun 24 '25 11:06 Grzegorz1223

Any update on this?

KevThompson2020 avatar Jul 21 '25 15:07 KevThompson2020

This will also be a issue for our team. Is there a plan ETA on the offical release?

shmoe01 avatar Aug 27 '25 23:08 shmoe01

This will also be a issue for our team. Is there a plan ETA on the offical release?

unfortunately this repo receives very little love from the maintainers.

Grzegorz1223 avatar Aug 28 '25 08:08 Grzegorz1223

Please release new version compatible with 16kb page size @mattleibow is a huge issue with Android requirement with Google Play to release new app updates.

jpmm94 avatar Sep 03 '25 09:09 jpmm94

For now, a workaround is to just install the latest SkiaSharp NuGet package. This will update the version of skia that has the support.

I am working on getting this package stable and released. Just hittong some issues since all the CI was "disabled" but bots since it was such a long time since anything happened.

mattleibow avatar Sep 03 '25 18:09 mattleibow

Thanks @mattleibow, I tried installing the latest skiasharp Nuget and it didn't work. I still get the warning about it.

KevThompson2020 avatar Sep 03 '25 18:09 KevThompson2020

Did you install the latest v3?

mattleibow avatar Sep 03 '25 18:09 mattleibow

I tried SkiaSharp 3.119.0

Are there any others I need to try? I only had SkiaSharp and the extended Maui ui nuggets.

KevThompson2020 avatar Sep 03 '25 18:09 KevThompson2020

I think that is correct. I just did a test now and is says it is 16 KB aligned:


Elf file type is DYN (Shared object file)
Entry point 0x0
There are 10 program headers, starting at offset 64

Program Headers:
  Type           Offset   VirtAddr           PhysAddr           FileSiz  MemSiz   Flg Align
  PHDR           0x000040 0x0000000000000040 0x0000000000000040 0x000230 0x000230 R   0x8
  LOAD           0x000000 0x0000000000000000 0x0000000000000000 0x23ba8c 0x23ba8c R   0x4000
  LOAD           0x23ba90 0x000000000023fa90 0x000000000023fa90 0x630420 0x630420 R E 0x4000
  LOAD           0x86beb0 0x0000000000873eb0 0x0000000000873eb0 0x02daf8 0x02e150 RW  0x4000
  LOAD           0x8999a8 0x00000000008a59a8 0x00000000008a59a8 0x001d08 0x0097b8 RW  0x4000
  DYNAMIC        0x896e68 0x000000000089ee68 0x000000000089ee68 0x0001f0 0x0001f0 RW  0x8
  GNU_RELRO      0x86beb0 0x0000000000873eb0 0x0000000000873eb0 0x02daf8 0x02e150 R   0x1
  GNU_EH_FRAME   0x1243f8 0x00000000001243f8 0x00000000001243f8 0x02931c 0x02931c R   0x4
  GNU_STACK      0x000000 0x0000000000000000 0x0000000000000000 0x000000 0x000000 RW  0x0
  NOTE           0x000270 0x0000000000000270 0x0000000000000270 0x000098 0x000098 R   0x4

Specifically the LOAD headers 0x4000 is 16KB:

  Type           Offset   VirtAddr           PhysAddr           FileSiz  MemSiz   Flg Align
  LOAD           0x000000 0x0000000000000000 0x0000000000000000 0x23ba8c 0x23ba8c R   0x4000
  LOAD           0x23ba90 0x000000000023fa90 0x000000000023fa90 0x630420 0x630420 R E 0x4000
  LOAD           0x86beb0 0x0000000000873eb0 0x0000000000873eb0 0x02daf8 0x02e150 RW  0x4000
  LOAD           0x8999a8 0x00000000008a59a8 0x00000000008a59a8 0x001d08 0x0097b8 RW  0x4000

mattleibow avatar Sep 03 '25 19:09 mattleibow

Maybe a clean is needed.

mattleibow avatar Sep 03 '25 19:09 mattleibow

I did do a full clean ( deleted bin/obj folders etc ) but happy to try again in the morning. Will let you know.

KevThompson2020 avatar Sep 03 '25 19:09 KevThompson2020

@mattleibow, what tool did you use to check the LOAD headers?

I added skiasharp nuget and did a clean build, and I think I've eliminated the KB page size warning, but I want to be sure

anotherlab avatar Sep 05 '25 13:09 anotherlab

Hi all, I am a bit confused I am using SkiaSharp.Extended.UI.Maui 3.0.0-preview.13 and I am getting in google console that base/lib/arm64-v8a/libSkiaSharp.so does not support 16KB pages..

I dont have SkiaSharp as a package in my apps, are we saying I should bring this in together with SkiaSharp.Extended.UI.Maui 3.0.0-preview.13 ?

Will SkiaSharp.Extended.UI.Maui 3.0.0-preview.13 any ideas when this might be released?

Very grateful for clarification

@mattleibow

gabsamples6 avatar Sep 11 '25 05:09 gabsamples6

Hola a todos, estoy un poco confundido. Estoy usando SkiaSharp.Extended.UI.Maui 3.0.0-preview.13 y en la consola de Google me aparece que base/lib/arm64-v8a/libSkiaSharp.so no admite páginas de 16 KB.

No tengo SkiaSharp como paquete en mis aplicaciones, ¿estamos diciendo que debería incorporarlo junto con SkiaSharp.Extended.UI.Maui 3.0.0-preview.13?

¿SkiaSharp.Extended.UI.Maui 3.0.0-preview.13 tendrá alguna idea de cuándo podría lanzarse?

Muy agradecido por la aclaración.

@mattleibow

Hola a todos, tengo la misma duda alguna respuesta?

Aguirrehub25 avatar Sep 11 '25 23:09 Aguirrehub25

@mattleibow @Aguirrehub25 @Grzegorz1223 I have managed to get rid of the Android 16 KB page sizes warning by upgrading to the latest package version "3.0.0-preview.18"

deepamhatre avatar Sep 12 '25 13:09 deepamhatre

Awesome. I am getting my pipelines going again and will do stable soon.

mattleibow avatar Sep 12 '25 13:09 mattleibow

Awesome. I am getting my pipelines going again and will do stable soon.

Hello, the deadline established by Google is approaching. What is the plan for the release schedule?

Grzegorz1223 avatar Oct 08 '25 13:10 Grzegorz1223

@mattleibow @jfversluis Could you please publish a stable NuGet package release for this library? We rely on this urgently as the deadline approaches.

Starting November 1st, 2025, all new apps and updates to existing apps submitted to Google Play and targeting Android 15+ devices must support 16 KB page sizes.

ChristopherStephan avatar Oct 13 '25 08:10 ChristopherStephan

@mattleibow we have the same need - Office policy I cannot use it as a "prerelease" . Thank you

developer9969 avatar Oct 13 '25 08:10 developer9969

@mattleibow thank you for fixing the pipelines, but I think that something is not right since the nuget repo was not updated with the latest version https://www.nuget.org/packages/SkiaSharp.Extended/#versions-body-tab

Grzegorz1223 avatar Oct 15 '25 09:10 Grzegorz1223

The 3.0.0 nugets should depend on the latest stable 3.119.1.

Maybe I am misunderstanding your question?

mattleibow avatar Oct 16 '25 07:10 mattleibow

11 hours ago a stable package was released. Thank you!

Image

ChristopherStephan avatar Oct 16 '25 08:10 ChristopherStephan

Solved with the update :) Thanks!

Grzegorz1223 avatar Oct 16 '25 11:10 Grzegorz1223