PencilKit - ITMS-90338: Non-public API usage when uploading app to AppStoreConnect

I tried weak linking PencilKit in 3 different ways:


  1. Via target > Frameworks > Add PencilKit > Do Not Embed
  2. By weak linking using "-weak_framework PencilKit" in other linker flags
  3. By linking using "-framework PencilKit" in other linker flags


Each build was rejected using ITMS-90338: Non-public API usage.


The project is in Objective-C. I also re-wrote the view controller that uses PencilKit into Swift and got the same error since that also bridges to ObjC land.


Has anyone successfully uploaded an archive to AppStoreConnect that is also linked with PencilKit and has a lower deployment target than iOS 13.0?

Replies

Having same issue - build is accepted if the deployement target is iOS 13.0, however anything lower is rejected.

Has anyone achieved weak linking with PencilKit? It seems like we have to switch back to ObjC on this... Just wondering before undertaking the migration of concerned class!