カスタム UI (SLComposeServiceViewController を使用しない) を使用して iOS 共有拡張機能を作成しましたが、すべてがうまく機能します。
拡張機能が呼び出されると、共有 URL またはテキストを受け取って送信します。それだけで、うまく機能します。
カスタム UI はシンプルです。送信中であることを示すグラフィックを表示する 1 つのイメージ ビュー。送信が完了すると、「送信済み」と表示されます。その後、これはフェードアウトします。
これが完了した後、拡張機能が消えたように見えますが、ホスト アプリケーションを制御できなくなります。目に見えない窓や景色がすべての上にあるようなものです。(たとえば、Safari のイメージ ローテーターは回転しますが、スクロールしたり、リンクやボタンをタップしたりすることはできません。)
[self.extensionContext completeRequestReturningItems:nil completionHandler:nil];
共有が完了したら呼び出します。理解できるように、UI を閉じる必要があります。私も[self.view removeFromSuperview]
運なしで試しました。
シミュレーターとデバイスで発生します。足りないものはありますか?
編集: これは、共有をテストするために作成した単純なアプリのビュー階層が、共有前と共有後の Reveal でどのように見えるかです。このアプリには、共有テキストと共有 URL の 2 つのボタンがあり、それぞれ標準の共有シートが表示されます。
前
後