22

In today’s episode of hybrid/cross platform tools are shit:

Electron 6 and 7 use private API’s on Mac OS, violating apple App Store rules, and apps now can’t be submitted.

The responses also say that continued attempts to try to hide private api usage may result in developer accounts being terminated.

So by using electron, you may get your Apple developer account closed down permanently .... rightly so for picking electron in my mind

Source:
https://david.dev/you-cannot-submit...

Comments
  • 2
    This is one reason I prefer installs from outside the app store.
  • 2
    How exactly is this rant NOT against Apple, but the tools?
  • 5
    @dindin the rules around private api’s in the App Store has never changed, so it’s not like they just forgot to update it in Electron. They went out of their way to add this stuff in, not following the rules and/or guidelines. Lack of awareness of this is a big issue when you are building a platform for other developers to use.

    Due to the way these tools work, these private api’s are going to be in the bundle’s of apps that had no intention of using what ever new feature was added, or even aware of the existence of these libraries. it’s impossible to remove them either. So a tonne of engineers are now fucked because the builders of the platform weren’t paying attention.

    These rules go part way to keeping malicious software, or privacy breaching software, etc, out of the App Store. Apples last change to request Bluetooth permission on iOS stopped Facebook unknowingly tracking people. So yes I’m all for it, and against using platforms that do this kind of shit
  • 3
    @bahua the reason I prefer using apps from the App Store because private API’s are, amongst other things, subject to change at the drop of hat without notification. Not a fan of things just breaking one day for no reason.

    Fast lane had this issue. They were using a private API for the App Store submission service. Apple changed it, and everyone’s CI/CD tool broke for a few weeks. It’s not worth it.
  • 1
    I don't know... I read the whole discussion here:
    https://github.com/electron/...

    Seems apps with Electron dating back to versions 3.x, 4.x, 5.x got rejected too!
    Looks like Apple bullying again, supposedly for a better world. 😀 Well, they got their own agenda and rules, can't blame them.

    But I wouldn't blame the Electron team either.
  • 2
    @dindin while it’s apparently fundamentally an issue with chromium, and not directly Electrons fault, I still blame the “hybrid/cross-platform” as being the root cause.

    Selling people the idea of “write once deploy anywhere” is complete bullshit. These kinds of issues are extremely common and are always very costly and time consuming to get around. I spent several years using a bunch of mobile tools, and I will never again buy into this crap or think it’s the right approach.
  • 2
    Electron can DIE and SHOULD be banned form every single store.
  • 3
    Define "private api", is there a link to the definition somewhere? C++ libraries often have private and public APIs due to the fact that they don't intend you to use that API as it can and will change.
  • 3
    @Demolishun I don’t know the definition. I’m sure there is one.

    To my knowledge the only way to access these private API’s is using something like reflection to call the API’s through a string.

    So it’s not as if it’s easy to do accidentally, you have to go out of your way to execute these libraries.
  • 4
    @practiseSafeHex Okay, I tracked this down. Apple doesn't want you using Apple's private APIs. This has nothing to do with 3rd party APIs. Frameworks are not supposed to use private Apple APIs and neither are apps. I wanted to know because it sounded fishy. I develop using a framework for several platforms. I wanted to make sure I understood the problem.
  • 2
    @practiseSafeHex @Demolishun so if the problem is with chromium, shouldn't chromium and chrome be banned too?
  • 2
    @gitlog being rejected from the App Store is the problem. It’s still possible to distribute your apps outside the App Store (like chrome) by downloading and installing manually. Chrome is not currently in the App Store.

    It’s like anything. Beware of anything from an untrusted source. Apple doesn’t prevent you from doing anything you want. But try to give you a higher degree of confidence in software coming directly from the App Store, due to these kind of restrictions
Add Comment