2017-03-19 7 views
2

私は、T-9キーボードのように機能するカスタムキーボードをiOS 10で作成しようとしています。カスタムキーボードに切り替えると、アプリ拡張機能はtxtファイルから約10,000語のリストを読み込み、その中からトライを作成します。Swift 3でのSigQuitの意味Xcode 8.2.1

しかし、キーボードを初めて使用しようとすると「SigQuit」エラーが発生します。それが失敗した直後にキーボードを再実行するのは、通常はうまくいくようです。 Xcodeは、アセンブリコード行のSigQuitエラー以外で失敗した理由について私には何の説明もしていません。

私の質問は、XcodeがSigQuitエラーを投げる理由は何ですか?私は無駄にデバッグしようとしました、そして、グーグルSigQuitは有用な情報を返すようではありません。私のキーボードはリソースが多すぎる/起動時に時間がかかっていると思っていましたが、CPU使用率を確認したところ、1%以下でピークに達しました。同様に、使用されたメモリは25Mbのようなもので、恐ろしくないようでした。

答えて

1

キーボードエクステンションのメモリ制限は、アプリよりもずっと低くなっています。あなたの拡張機能は、おそらくオペレーティングシステムによって殺されました。

を参照してください:アプリの拡張を実行するためのhttps://developer.apple.com/library/content/documentation/General/Conceptual/ExtensibilityPG/ExtensionCreation.html

メモリの制限は、フォアグラウンドアプリに課さ メモリの制限よりも大幅に低くなっています。どちらのプラットフォームでも、 システムは、ホストアプリケーションの主な目標に を返すことを望むため、拡張機能を積極的に終了することがあります。いくつかの拡張機能には、他よりもメモリ量が少なくて済む があります。たとえば、ユーザが複数のウィジェットを同時に開く可能性があるため、ウィジェットは特に効率的に でなければなりません。

関連する問題