問題タブ [today-extension]
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.
objective-c - Today Extension から URL を開く
OSX Yosemite の Today 拡張機能も使用しているココア アプリを開発しています。
Today 拡張機能にボタンがあり、メイン ブラウザーと定義済みの Web サイトを開くために必要です。
私は通常使用します
[[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"http://www.google.com"]];
ただし、このコードは拡張機能で使用すると機能しません。
ios - iOS / OS X Today ビュー拡張機能で Crashlytics を使用するには?
現在、拡張機能は個別のプロセスとして実行されているため、すぐにクラッシュが記録されることはないと確信しています。ウィジェットで Crashlytics を個別に初期化する必要があると思います。たとえば、のviewDidLoad
メソッドでTodayViewController
。
- iOS / OS X 拡張機能内で Crashlytics を既に使用している人はいますか? もしそうなら、どのように実装しましたか?
- 拡張機能のためだけに Crashlytics で別のアプリを作成することが理にかなっているのかどうかも疑問に思っています.
cocoa - NSExtensionContext openURL が OS X Today 拡張機能から機能しない
OSX Today Extension で自分のアプリを呼び出したいです。これは私がテストに使用しているコードです:
ユーザーが NSTableView のダブル アクションをトリガーしたときに呼び出されます。アプリの URL を正しく使用しているかどうかわからなかったので、テスト用に google に設定しました。問題は、完了ハンドラーが呼び出されていないことです。そのため、何かがそれをブロックしていると推測しています。
これを機能させるには、サンドボックス機能で何かを指定する必要がありますか、それとも他に何か確認する必要がありますか?
ios - 拡張機能の初期化に時間がかかりすぎる
viewDidLoad:
メソッドにはunloadClipboard:
、ユーザーの画像クリップボードを NSData に変換する、呼び出されるビットが含まれています。理論上はすべて正常に動作するはずですが、バックグラウンド スレッドで実行しているにもかかわらず、初期化に時間がかかりすぎるため、このコードでウィジェットがクラッシュします。
いくつかのブレークポイント、NSLog、およびウィジェット ターゲットのプロファイリングに時間をかけた後、この行は時間がかかりすぎると思われる行であるという結論に達しました。
クラッシュ レポートの例を次に示します。
例外の種類: EXC_CRASH (SIGABRT) 例外のサブタイプ: LAUNCH_HANG 例外メッセージ: 拡張機能の初期化に時間がかかりすぎました
ウィジェットが正常に実行されたそのブロックからコードをコメントアウトすることによっても、問題を切り分けることに成功しました。どんな助けでも大歓迎です。
更新:変更を加えたコードは次のとおりです。
ログは次のとおりです。
12 月 1 日 18:41:57 Isa-Ranjhas-iPhone ReportCrash[7074]: プロセス CopyfeedWidget[7073] のクラッシュ レポートの作成41:57 Isa-Ranjhas-iPhone SpringBoard[328]: プラグイン com.isaranjha.Copyfeed.CopyfeedWidget が 12 月 1 日に中断されました18:41:57 Isa-Ranjhas-iPhone mediaserverd[22]: '' (pid = 7073) 設定 DiscoveryMode = DiscoveryMode_None、currentDiscoveryMode = DiscoveryMode_PresenceScan 12 月 1 日 18:41:57 Isa-Ranjhas-iPhone assertiond[63]: pid_suspend が失敗しました: 不明なエラー: -1、不明なエラー: -1 Dec 1 18:41:57 Isa-Ranjhas-iPhone assertiond[63]: アサーションに失敗しました: 12B436: assertiond + 57724 [10EC04AD-D18F-3ECD-8A8E-FBB1CC4E2BD6]:0x3 Dec 1 18:41:57 Isa-Ranjhas-iPhone assertiond[63]: 優先度を 2 に設定できませんでした。優先度: そのようなプロセスはありません。 Dec 1 18:41:57 Isa-Ranjhas-iPhone assertiond[63]: できません優先度を 4096 に設定、優先度: そのようなプロセスはありません。 -Ranjhas-iPhone pkd[5114]: プラグイン com.isaranjha.Copyfeed.CopyfeedWidget(1.0) をプラグイン サンドボックスに割り当てます。 com.isaranjha.Copyfeed.CopyfeedWidget(1.0) CAF48DC4-9AD3-4E4F-82F5-F77903676E1F /private/var/mobile/Containers/Bundle/Application/E12BF21F-02A5-4E06-8D4C-CA2DEBCA3850/Copyfeed.app/PlugIns/CopyfeedWidget 内.appex57 Isa-Ranjhas-iPhone assertiond[63]: 優先度を 2 に設定できませんでした、優先度: そのようなプロセスはありません: そのようなプロセスはありません。 ] : プラグイン com.isaranjha.Copyfeed.CopyfeedWidget(1.0) をプラグイン サンドボックスに割り当てます。 CopyfeedWidget(1.0) CAF48DC4-9AD3-4E4F-82F5-F77903676E1F /private/var/mobile/Containers/Bundle/Application/E12BF21F-02A5-4E06-8D4C-CA2DEBCA3850/Copyfeed.app/PlugIns/CopyfeedWidget.appex57 Isa-Ranjhas-iPhone assertiond[63]: 優先度を 2 に設定できませんでした、優先度: そのようなプロセスはありません: そのようなプロセスはありません。 ] : プラグイン com.isaranjha.Copyfeed.CopyfeedWidget(1.0) をプラグイン サンドボックスに割り当てます。 CopyfeedWidget(1.0) CAF48DC4-9AD3-4E4F-82F5-F77903676E1F /private/var/mobile/Containers/Bundle/Application/E12BF21F-02A5-4E06-8D4C-CA2DEBCA3850/Copyfeed.app/PlugIns/CopyfeedWidget.appexそのようなプロセスはありません。識別子 'com.isaranjha.Copyfeed.CopyfeedWidget' を持つウィジェットが予期せず切断されました 12 月 1 日 18:41:57 Isa-Ranjhas-iPhone pkd[5114] : プラグイン com.isaranjha.Copyfeed.CopyfeedWidget(1.0) をプラグイン サンドボックス 12 月 1 に割り当てます18:41:57 Isa-Ranjhas-iPhone pkd[5114] : プラグイン com.isaranjha.Copyfeed.CopyfeedWidget(1.0) の pid=328 を有効にします CAF48DC4-9AD3-4E4F-82F5-F77903676E1F /private/var/mobile/Containers /バンドル/アプリケーション/E12BF21F-02A5-4E06-8D4C-CA2DEBCA3850/Copyfeed.app/PlugIns/CopyfeedWidget.appexそのようなプロセスはありません。識別子 'com.isaranjha.Copyfeed.CopyfeedWidget' を持つウィジェットが予期せず切断されました 12 月 1 日 18:41:57 Isa-Ranjhas-iPhone pkd[5114] : プラグイン com.isaranjha.Copyfeed.CopyfeedWidget(1.0) をプラグイン サンドボックス 12 月 1 に割り当てます18:41:57 Isa-Ranjhas-iPhone pkd[5114] : プラグイン com.isaranjha.Copyfeed.CopyfeedWidget(1.0) の pid=328 を有効にします CAF48DC4-9AD3-4E4F-82F5-F77903676E1F /private/var/mobile/Containers /バンドル/アプリケーション/E12BF21F-02A5-4E06-8D4C-CA2DEBCA3850/Copyfeed.app/PlugIns/CopyfeedWidget.appex57 Isa-Ranjhas-iPhone SpringBoard[328]: 識別子 'com.isaranjha.Copyfeed.CopyfeedWidget' を持つウィジェットが予期せず切断されました。 Copyfeed.CopyfeedWidget(1.0) をプラグイン サンドボックスへ82F5-F77903676E1F /private/var/mobile/Containers/Bundle/Application/E12BF21F-02A5-4E06-8D4C-CA2DEBCA3850/Copyfeed.app/PlugIns/CopyfeedWidget.appex57 Isa-Ranjhas-iPhone SpringBoard[328]: 識別子 'com.isaranjha.Copyfeed.CopyfeedWidget' を持つウィジェットが予期せず切断されました。 Copyfeed.CopyfeedWidget(1.0) をプラグイン サンドボックスへ82F5-F77903676E1F /private/var/mobile/Containers/Bundle/Application/E12BF21F-02A5-4E06-8D4C-CA2DEBCA3850/Copyfeed.app/PlugIns/CopyfeedWidget.appex57 Isa-Ranjhas-iPhone pkd[5114] : プラグイン com.isaranjha.Copyfeed.CopyfeedWidget(1.0) の pid=328 を有効にします CAF48DC4-9AD3-4E4F-82F5-F77903676E1F /private/var/mobile/Containers/Bundle/Application /E12BF21F-02A5-4E06-8D4C-CA2DEBCA3850/Copyfeed.app/PlugIns/CopyfeedWidget.appex57 Isa-Ranjhas-iPhone pkd[5114] : プラグイン com.isaranjha.Copyfeed.CopyfeedWidget(1.0) の pid=328 を有効にします CAF48DC4-9AD3-4E4F-82F5-F77903676E1F /private/var/mobile/Containers/Bundle/Application /E12BF21F-02A5-4E06-8D4C-CA2DEBCA3850/Copyfeed.app/PlugIns/CopyfeedWidget.appex
ios - .appex ではなく .app として作成された iOS Today 拡張機能
かなり長い間取り組んできたプロジェクトに Today Extension を追加しようとしています。実際、このアプリは既に AppStore にあり、Today Extension で強化したいと考えています。
問題は、拡張機能がまったく起動しないことです。デバイスでもシミュレーターでもありません。
編集:問題を見つけたと思うので、次のセクションをスキップして最後の編集を読んでください。修正方法がわかりません。
チュートリアルに従ってテスト プロジェクトを実行しましたが、問題なく動作します。環境は(!)同一のようです。デバイスおよびシミュレーター上の Xcode 6.1.1、iOS 8.1。
私のプロジェクトは Objective-C ベースです。拡張機能については、Objective-C と Swift の両方のターゲットを試しました。どちらの場合も、3 つすべて (obj-C では 4 つ) のファイルが期待どおりに作成されました (ストーリーボード、viewController、および PLIST)。
(サンプル プロジェクトと同様に) 何もせずに、ウィジェット スキームを選択してウィジェットを起動しようとしています。テスト プロジェクトではウィジェットが起動しますが、実際のプロジェクトでは起動しません。
ウィジェット viewController の viewDidLoad に println()/NSLog を配置して、何も起こらないかどうかを確認しました。
コードまたは設定を喜んで提供しますが、現時点ではどこから始めればよいかわかりません。
テスト プロジェクトでは、ウィジェットが Xcode から実行されると、今日のビューが自動的に起動/表示されることに気付きました。私の実際のプロジェクトでは、HomeScreen を取得するだけで、Today ビューを自分でプルダウンする必要があります。したがって、テスト プロジェクトと比べてすべてが同じように見えますが、ウィジェットに関しては実際には何も起こりません。
どんな助けでも大歓迎です。
編集:これは、問題を構成する可能性のある私が遭遇したものです。ウィジェットが実際に起動されることはなく、Xcode のデバッグ ナビゲーターの「Waiting to Attach」でスタックします。他の人も同じ問題を抱えているように見えましたが、これまでに見つけたすべての潜在的な解決策はうまくいきませんでした。
編集: Today ウィジェットをターゲットとして追加すると、バイナリの名前が.appになることに気付きました。バイナリを作成したすべてのテスト プロジェクトは.appexとして作成されます。Web 上のすべての情報は、実際には.appexという名前にする必要があることを示唆しています。これはどこから来て、どうすれば変更できますか?
ios - Todays Extension コンテナー アプリ アクション
今日の拡張機能から hostApp を開く方法を知っています。しかし、今日の拡張機能からのみ開く場合、hostAppでアクションを実行する方法がわかりません。助言がありますか。?前もって感謝します。