問題タブ [xpc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
454 参照

xcode - XPC remoteObjectWithErrorHandler がエラーをスローしない

ヘルパー ツールがエラー ハンドラを介してインストールされているかどうかを検出しようとしていますが、エラー ブロックも成功ブロックも実行されません。ヘルパーが既にインストールされている場合、正常に動作します。エラーがある場合、エラーをキャッチしません。ドキュメントでは、常にこれら 2 つのブロックのいずれかが実行されます。

0 投票する
4 に答える
3021 参照

objective-c - How to synchronously wait for reply block when using NSXPCConnection

I'm using NSXPCConnection and one of my interface call has a reply block, like this:

Which I call like this:

My understanding is that the reply block run asynchronously, and potentially after the method returns.

I want to test the return code synchronously, what's the best way to do it?


To clarify further the snippet above: the proxy object is the remote object obtained from an NSXPCConnection object using the remoteObjectProxy method. This is an important detail as this impact on which queue the reply block is invoked.

0 投票する
0 に答える
75 参照

swift - XPC サービスへの循環参照を使用してオブジェクトを渡す

オブジェクトを循環で XPC サービスに渡したいです。

オブジェクトクラスCourse a TeacherStudentの配列があるとしましょう。Student はTeacherへの参照も持っています。

XPC プロトコル シグネチャには、3 つのオブジェクトの任意の組み合わせが含まれます。NSSecureCodingそのような参照を扱う場合、どのように実装できますか?

0 投票する
0 に答える
287 参照

swift - 長時間実行サービス用の XPC

私は OS X 用のクライアント/サーバー アプリケーションを作成しています。サービスは永久に、または少なくとも可能な限り近くで実行する必要があります。:-)

以前、Objective-C アプリケーションで「古典的な」分散オブジェクトを使用して成功しましたが、今回は Swift と新しい光沢のある IPC テクノロジである XPC を使用したいと思いました。

だから、ここに私の質問があります:

XPC Mach サービス (root 権限が必要) を作成し、launchd を介して開始すると、新しい着信接続ごとにプロセスが再起動するように見えます。以前にlaunchdを介して開始されたサービスを作成しましたが、この問題は一度もありませんでした。これを引き起こす XPC の使用に特有のものはありますか?

私の好みは、Unix ドメイン ソケットのようなより基本的なものではなく、高レベルの IPC メカニズムを使用することですが、必要に応じてそのレベルまで下げることもできます。

0 投票する
1 に答える
1512 参照

ios - クラッシュ: XPC API の誤用: 接続の過度の再開

Crashlyticsによって報告された iOS アプリのクラッシュがあります。

デバイス: iPhone 6+
iOS : 10.0.1

スタック トレースは次のとおりです。

それを再現する方法について何か考えはありますか?
何がクラッシュを引き起こす可能性があるかについて何か考えはありますか?

0 投票する
0 に答える
671 参照

swift - ヘルパー アプリケーションをメイン バンドルの XPC サービスと通信させる方法

通常のアプリ、'Contents/Library/LoginItems' ディレクトリに保存されたログイン項目、および 'XPC Services' ディレクトリに保存された XPC Service を含む osx アプリケーションを作成しました。

私のメイン アプリケーションは、以下のように XPC サービスと通信できます。

それは正常に動作します。

しかし、ログイン エージェント アプリケーションは機能しません。ヘルパー アプリケーションと通信できないと報告されました。XPCサービスが見つからないと思いました。

XPC Service バイナリをエージェントのバンドルに埋め込んだ後、それが機能することがわかりました。ただし、同じバンドルに 2 つの xpc バイナリ バンドルがあります。おそらくこれはエレガントなソリューションではないと思います。

この問題を解決する別の方法はありますか?

0 投票する
0 に答える
1011 参照

swift - iOS 10 アプリの XPC 接続が中断されました (シミュレーターでは正常に動作します)

Swift 3 にアップデートしたばかりで、ios 10 のコードを実行しようとしています。すべて正常に機能していましたが、興味深いエラーが発生しました。コードはシミュレーターで動作しますが、デバイスにビルドしようとすると、ビューを切り替えると次のエラーが発生します。

2016-10-11 23:04:23.574944 Glancer[6526:2174852] XPC接続中断 2016-10-11 23:04:23.575269 Glancer[6526:2174950] 【共通】システムアプリがないため終了。

これを解決する方法はありますか?

0 投票する
2 に答える
1729 参照

synchronization - Finder Sync 拡張機能とメイン アプリはどのように通信する必要がありますか?

私の使用例: ファイルの同期を行う「MainApp」があります。「MainApp」が、同期に関するすべてのサーバー呼び出しと、ドキュメント共有などのその他の REST API 呼び出しを処理することを希望します。

一方、同期ステータス アイコン オーバーレイを表示する Finder Sync Extension を用意します。また、ユーザーがファイルを共有する相手を選択できる共有ダイアログを表示するファイルコンテキストメニュー項目「共有」も含まれます。

質問:

  1. FinderSyncExtension と MainApp はどのように通信する必要がありますか? XCP を使用する必要がありますか?使用する場合、通信は双方向で問題ありませんか? たとえば、一部のファイルが同期されているため、更新する必要があることを Finder に通知する MainApp と、「共有」操作を実行する必要があることを Finder が MainApp に通知します。

  2. 「共有」ダイアログを表示するのは誰ですか? FinderSyncExtension の [共有] メニュー項目をクリックすると、共有フォームが表示されます。これは、ファインダー拡張機能または MainApp によって表示される必要があります (FinderExtension が「共有」項目がクリックされたことを通知したと仮定します)。

Finder 拡張機能がフォームを表示する必要がある場合、FinderExtension はサーバーからデータ (共有用の連絡先やグループなど) も取得する必要があり、Finder 拡張機能がサーバーに対してネットワーク呼び出しを実行する必要があるかどうかはわかりません。

このトピックを調査したところ、いくつかのアプローチが見つかりました。

  1. FinderSyncExtension と MainApp は直接通信しません。代わりに、FinderExtension はデータベースからデータを読み取り、バッジを適切に表示します。このシナリオでは、同期が完了したときに FinderExtension を更新する方法や、なんらかのアクションを実行するように MainApp に通知する方法が不明です。
  2. XPC通信。FinderExtension は MainApp への呼び出しを開始できると思いますが、逆方向が予想されますか?
  3. macOS プロセス間に何らかの種類の NotificationCenter がありますか? 試してみましたが、MainApp で通知を配信NSWorkspace.sharedWorkspace.notificationCenterNSDistributedNotificationCenter.defaultCenterていないようです。
  4. Seafile プロジェクトのような mach_ports?