Announcement

Collapse
No announcement yet.

Apple Rejects iOS App For Using MoltenVK Vulkan, Alleged Non-Public API

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Apple Rejects iOS App For Using MoltenVK Vulkan, Alleged Non-Public API

    Phoronix: Apple Rejects iOS App For Using MoltenVK (Vulkan Over Metal)

    Back in February MoltenVK was open-sourced as part of The Khronos Group and Valve working harder to get Vulkan working on macOS/iOS by mapping it through to using Apple's Metal Graphics/Compute API. The most notable user of MoltenVK on macOS to date is the Vulkan Dota 2 on Mac, but for those looking to use this Vulkan-to-Metal framework on iOS, it looks like Apple might be clamping down...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    The explanation about non-public API is most likely a smokescreen to avoid an anti-trust case, something the iOS ecosystem has been dangerously close to for years.

    Comment


    • #3
      It's plausible that MoltenVK itself is calling functions or accessing/modifying data structures which are intended to be private within Apple's libraries.

      A plausible explanation for why Apple have come down on this app now rather than when it was first published, is that Apple have introduced an automated tool for spotting usage of private functions & data structures within apps. Rather than scan existing apps and remove them and damage the user experience they could just be scanning new apps and app updates as that provides them the opportunity to communicate with the developers. Mozilla already make use of automated tools for checking Firefox extentions for various issues. Makes sense that Apple would do the same.

      Comment


      • #4
        I'm disappointed but not surprised.
        Oh, Apple.

        Comment


        • #5
          Originally posted by cybertraveler View Post
          It's plausible that MoltenVK itself is calling functions or accessing/modifying data structures which are intended to be private within Apple's libraries.

          A plausible explanation for why Apple have come down on this app now rather than when it was first published, is that Apple have introduced an automated tool for spotting usage of private functions & data structures within apps. Rather than scan existing apps and remove them and damage the user experience they could just be scanning new apps and app updates as that provides them the opportunity to communicate with the developers. Mozilla already make use of automated tools for checking Firefox extentions for various issues. Makes sense that Apple would do the same.
          It's even more plausible Apple is just trying to protect their walled garden though

          Comment


          • #6
            Well, to me it sounds plausible to not allow that, even from a purely technical standpoint. It could lead to crashes and bad user experience later on. Let's hope there're ways for moltenVK to work around that...

            Anyhow, it's a shame that it's necessary to create such a wrapper in the first place.

            Comment


            • #7
              Private APIs have no stability guarantee, meaning they can change at any moment without notice, breaking applications. So if MoltenVK really is using private APIs, that's not good and Apple is actually right here. Though MoltenVK likely uses those APIs because the public ones don't offer what it needs, which is something Apple could address, but they might not do so in order to force devs to use Metal. Which is bad for developers, but totally in line with what one can expect from Apple.

              Comment


              • #8
                Originally posted by nanonyme View Post

                It's even more plausible Apple is just trying to protect their walled garden though
                How does banning MoltenVK protect their walled garden? It's just an intermediate layer that sits between an app and some Apple APIs. It has a positive benefit for apple in that it makes it easier, faster and cheaper for app developers to port games to iOS. Games almost always have their own interface and UX that is separate from the typical iOS interface and UX. So it's not like we're talking about GTK+ being ported to iOS and braking the iPhone user experience.
                Last edited by cybertraveler; 08 July 2018, 08:31 AM. Reason: typo

                Comment


                • #9
                  Originally posted by Gusar View Post
                  Private APIs have no stability guarantee, meaning they can change at any moment without notice, breaking applications. So if MoltenVK really is using private APIs, that's not good and Apple is actually right here. Though MoltenVK likely uses those APIs because the public ones don't offer what it needs, which is something Apple could address, but they might not do so in order to force devs to use Metal. Which is bad for developers, but totally in line with what one can expect from Apple.
                  Exactly my thoughts.

                  Apple want to be able to roll out updates to their OS without apps braking. If apps brake during an update this is bad for their users and many of their users will even blame Apple. Hence Apple almost certainly maintain stable public APIs and request developers don't touch the private internals.

                  I found some stackoverflow threads discussing this:
                  Now that it's public knowledge that App Store submissions are being tested for use of private APIs, I need to ask the question... what exactly is a private API so that I may avoid them?

                  I've read several articles about this, and I just want to see if I understand this correctly: Apple will reject your app if you use a Private API... What is the main difference between a "Pri...

                  Comment


                  • #10
                    Jeez Apple, I know you really want people to adopt Metal, but you don't have to be so petty about it...

                    Comment

                    Working...
                    X