

iOSでは、すべてのアプリはApp Storeを経由する必要があります。macOSでは、Mac App Storeは配信方法の一つに過ぎず、開発者は独自のウェブサイトでアプリを自由に公開できます。つまり、macOSのアプリ拒否ポリシーはiPhoneやiPadほど厳しくはありませんが、それでもなお重要です。
開発者らは、Electron (企業がネイティブ アプリ ラッパーで Web アプリを出荷できるようにするフレームワーク) を使用して作成されたアプリが、自動化された Mac App Store レビュー プロセスによって拒否されるようになっていると報告しています。
問題のアプリは、プライベートAPI呼び出しを使用しているため、フラグが付けられています。これらのAPI呼び出しはアプリ自体ではなく、基盤となるElectronフレームワークの一部です。
検出されたプライベート API シンボルには次のものがあります:
CAContext
CALayerHost
NSAccessibilityRemoteUIElement
NSNextStepFrame
NSThemeFrame
NSURLFileTypeMappings
どうやら、Electronフレームワークは長年にわたりこれらのAPIを使用してきたようです。Appleは、App Reviewガイドラインへの違反をより多く検出するために、サーバー側のアプリレビュープロセスをアップグレードしました。そして今、このプライベートAPIの使用が特定されつつあります。
個々のElectronアプリ開発者は、この問題をElectronコード自体に変更を加えることでしか解決できないため、やや無力です。Electronが極端なことをしているようには見えず、悪意のある行為をしているわけでもありません。App Reviewは、アプリがプライベートAPIを使用している理由を問いません。これは(少なくとも理論上は)厳格なルールです。
表面的には、Electron が API 参照を削除して代替アプローチを採用するのは比較的簡単なように思えます。ただ、その作業はまだ完了しておらず、Electron に依存している人々は現在、苦境に立たされています。
Electronの拒否件数の増加は、開発者がネイティブiPadアプリをMacに迅速に移植できるようにするAppleのCatalystフレームワーク導入に伴うElectronへの取り締まり強化だと解釈する声もある。陰謀論としては魅力的だが、実際には筋が通っていない。Appleには、開発者にCatalystの使用を強制する金銭的またはその他のインセンティブが実際には存在しないからだ。
Mac開発者がApp Storeにアプリを提出したくない場合は、独自にアプリを公開できます。ただし、macOS Catalinaでは、アプリがGatekeeperセキュリティモデルに準拠し、顧客のマシンで実行できるようにするために、登録済みの開発者アカウントを使用して認証を受ける必要があります。
公証とは、主にアプリのデジタル署名を作成することです。これにより、アプリが改ざんされにくくなり、後でシステムによって識別できるようになります。これは簡易なアプリ審査プロセスではないため、プライベートAPIの使用状況などはチェックされません。
havebin.com を Google ニュース フィードに追加します。
FTC: 収益を生み出す自動アフィリエイトリンクを使用しています。詳細はこちら。