別々のアプリケーションはDLLのような形式で同じバイナリを共有できますか?静的ライブラリをコンパイルすることは可能ですが、DLLと同じものとして数えません(つまり、DLLは複数のアプリケーションで共有されるバイナリの1つのコピーですが、スタティックライブラリはアプリケーションを使用するごとに別々に含まれます)。iOSにはDLL/IPC /プロセス産卵に相当するものがありますか?
それぞれのアプリは完全に別々のものですか?通信やデータ共有のために異なるアプリで使用できるIPCやファイル共有の仕組みはありますか?
新しいスレッドに加えて新しいプロセスを作成することは可能でしょうか?
答えて
アプリケーション間で実行可能ファイルを共有することはできません。 Appleは、すべてのアプリがスタンドアロンで機能することを要求しています。ただし、UIDocumentInteractionControllerを使用して、理解していないファイルを処理する別のプログラムを取得し、「クイックビュー」を利用できるようにすることができます。それがMailの仕組みです。
iOS 5では、同じベンダーのプログラムがキーチェーンを共有できますが、iCloudストレージはディスクに共有できません。サポートされているファイルタイプを宣言できるため、UIDocumentInteractionControllerを使用して、あるアプリから別のアプリにファイルへの一時アクセスをプッシュできます。同様の方法でカスタムURLスキームを使用すると、データの断片を渡すことができます。
一般的に、iOSでは一度に1つのユーザープロセスのみがアクティブになることがあります。バックグラウンド処理は基本的にイベントベースです。したがって、自分のために2番目のプロセスを作成することはできません。
jailbroken電話をターゲットにしていて、AppleのApp Storeをバイパスしている場合を除き、基本的に上記のすべてには該当しません。あなたが脱獄した場合、私はあなたがMac OS Xで持っているものと同様のオプションを持っていると信じています。
jailbreak携帯電話用に開発している場合は、これを行うことができます。ない otherwise.Onジェイルブレイク電話、あなたは が
アプリをサンドボックス化されている(多くの MacOSの上など)
DYLD_INSERT_LIBRARIES
環境VAR経由でロードすることができ.dylibsまたは共有ライブラリを作成することができます。ただし、アプリ間で通信する方法はいくつかあります。あなたは(a)のcustomURL scheme (also mentioned by Tommy above) (もしあれば)あなたが アプリ、then you can use Message ports (CFMessagePortCreateRemote)
を伝えるコントロールしている場合(b)の 起動アプリにアプリを起動し、いくつか パラメータを送信するアプリに関連付けられているを使用することができます はあなたが通信アプリケーションをコントロールしている場合(c)に、もちろんyou could use Darwin NOtification center for distributed apps.
(b)と(c)への期待が 通信アプリがすべて実行されていることです。 iOSの場合、前景は のプロセスが1つしかないため、バックグラウンドアプリとして持っていなければならず、 はiOSプラットフォームの特定の種類のアプリに限定されています。
iOS 7以降、CFMessagePortは使用できません。 –
- 1. iOSの「adbシェル」に相当するものがありますか
- 2. ジーンベント:多くのグリーンレッツ産卵に欠点はありますか?
- 3. アンドロイド用のiOSのidentifierForVendorに相当するものはありますか?
- 4. Android用のHero iOSに相当するものはありますか?
- 5. iOSのAndroidサービスに相当するものはありますか?
- 6. アンドロイド用iOS NSLinguisticTaggerに相当する(粗い)ものはありますか?
- 7. NullPointerExceptionのC++に相当するものがありますか?
- 8. appendBezierPathWithArcWithCenterに相当するiOSがありますか
- 9. PythonでNODE_ENVに相当するものがありますか?
- 10. GetMacOSStatusErrorStringとGetMacOSStatusCommentStringのiOSに相当するものがあります
- 11. PHPのサブプロセスに相当するものはありますか?
- 12. GCCのstdcallに相当するものはありますか?
- 13. Tomcatのmod_statusに相当するものはありますか?
- 14. AjaxMinTaskのコマンドラインパラメータに相当するものはありますか?
- 15. PerlのSonarに相当するものはありますか?
- 16. タイムスタンプのLAST_INSERT_IDに相当するものはありますか?
- 17. Swift/Obj-C/iOSに相当するルビーコンソールはありますか?
- 18. Java用ソースアウトライナーに相当するものはありますか?
- 19. Git:hgストリップに相当するものはありますか?
- 20. C#:JTableに相当するものはありますか?
- 21. SQL Server:strpos()に相当するものはありますか?
- 22. gluScaleImage関数に相当するものはありますか?
- 23. SQLスクリプト - #defineに相当するものはありますか?
- 24. JavaにTweenMax相当のものがありますか?
- 25. iOSのonDrawに相当するもの
- 26. libGDXには、JavaFXのPathTransitionに相当するものがありますか?
- 27. Goには、このJS式に相当するものがありますか?
- 28. には、クライアントのEndpointInterceptorAdapterに相当するものがありますか?
- 29. .Net PixelFormatにはJavaに相当するものがありますか?
- 30. OrientDBにRedisの「パイプライン」に相当するものがありますか?
ありがとうございます。 2) - アプリケーション内の異なるクラスがNSNotificationCenterを使用して相互に通信できる場合、NSNotificationCenterも2つのアプリケーション間で使用できますか? – Gruntcakes
NSNotificationCenterはアプリ内通信専用です。 – Tommy