問題タブ [ios-extensions]

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 投票する
0 に答える
177 参照

ios - PhotoEditing Extension を使用して画像に効果を加える

PhotoEditing Extensionでトリミングした画像を設定したい

トリミング機能と回転機能を提供しましたシミュレーターの写真にその効果を加えたい

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

xcode - アプリ グループ iOS 8 拡張機能を追加するには?

私は奇妙な問題を抱えています:私が取り組んでいるプロジェクトでは、共有拡張機能を導入する必要があります。私が今抱えている問題は、アプリ グループを追加できないことです。
アクティブにすると、https://www.dropbox.com/s/sp7tqbv9x6q175i/Screenshot%202015-01-07%2009.56.34.png?dl=0に問題があることがわかります。メインアプリのターゲットに別のバンドル ID を使用すると機能しますが、このバンドル ID を使用する必要があります。アプリ グループを追加しようとするとhttps://www.dropbox.com/s/7pi1n4j8xajngvm/Screenshot%202015-01-07%2010.03.44.png?dl=0同じエラーが表示されますが、1 行上に表示されます。アプリ ID からプロビジョニング ポータルからこの設定を変更しようとしましたが、問題なく動作し、追加されます。

ありがとうございました。

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

ios - iOS8 拡張機能 : コンテナーと拡張機能の間で画像を共有する

iOS 8 拡張機能を作成しています。私がやろうとしていることは次のとおりです: ユーザーはコンテナー アプリのフォト ライブラリから画像を選択し、これらの画像は拡張機能と共有され、さらに使用できるようになります。

現在、私はこの方法でそれを行っています (この部分を読みたくない場合は、以下をスキップして実際のコードを読んでください): Use App Group and NSUserDefaults to share data . UIImage を NSData に変換し、すべての画像を NSArray に保存してから、配列を NSDictionary に保存します (私は多くの配列を持っており、これが配列を整理する方法です。そのため、それらを辞書に保存する必要があります)。最後に辞書を次の場所に保存します。ユーザーのデフォルト。

コーディングは次のとおりです。

画像を取得したいとき:

convertArray は、取得したい画像の配列になります。

どうやら、私がこのようにすると多くの問題があるようです。たとえば、次の 2 つの大きな問題があります。

  • これを行うには、メモリを含む多くのリソースが必要です。実際に処理が完了するまでに 30 分ほどかかります。画像が 20 個程度の配列がある場合、「didRecieveMemoryWarning」が 3 回ほど発生します (テスト デバイスとして iPad mini を使用しています)。データが正しく保存されないことがあります。viewController がポップアウトされた後 (これは、保存しているコードの最後の行まで実行されることを意味します)、UserDefault に保存したばかりの配列に対して nil を取得します! 私のコーディングはすべて正常に機能したと確信しています。配列に含まれる画像が 15 未満の場合、それらを完全に保存および取得できるため、この問題はメモリ不足が原因です。

  • 以前に保存した配列に新しい画像を保存するのは困難です。これを行うには、前の配列を取得して新しい画像データをその配列に追加し、新しい配列を UserDefault に保存する必要があります。前述のように、配列を UserDefault に保存すると大量のメモリが必要になります。

したがって、私の質問は非常に率直で具体的です。

  1. あるターゲットから別のターゲットに画像を転送する他の方法はありますか? つまり、コンテナー アプリから拡張機能に画像を転送するにはどうすればよいでしょうか?
  2. そうでない場合、私のコードで問題を解決する方法はありますか? これは適切な方法ですか?

聞きたいことはこれだけですが、次の質問にも答えていただければ幸いです。

  1. 1 回の保存プロセスで複数の「didRecieveMemoryWarning」が表示されるのはなぜですか? システムがメモリ警告を受け取ったとき、すぐにアクションを停止しますか?
  2. (念のため)PNGとJPGを含むすべての画像にUIImagePNGRepresentationを使用しても安全ですか?

ありがとうございました。

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

iphone - iOS 8 の Photo Editing Extension でカメラを使用することはできますか?

シンプルな写真編集拡張機能を作成しようとしています。フィルタ付きのカスタム カメラを拡張機能として使用したいのですが、Apple ドキュメントでは、写真編集拡張機能がフォト ライブラリのアセットを使用することを示唆しています。これは拡張機能の制限ですか? そうでない場合は、これを達成する方法を教えてください。どうもありがとうございました!

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

javascript - iOS 共有拡張機能によりプレビューが無効になる

iOS で Safari の共有拡張機能に取り組んでいます。iOS のストック UI を使用しているため、SLComposeServiceViewController を拡張します。また、JavaScript を使用してページのコンテンツを読み取り、いくつかのパラメーターを設定しています。JS ファイルが含まれていない場合、UI は正常にプレビューを表示します。しかし、JS ファイルをインクルードするとすぐに、プレビューが表示されません。なぜこれが表示されないのか、誰にもわかりませんか?プレビューを有効にする設定が info.plist にありますか?

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

ios - iOS アプリケーション拡張機能のアクティベーション ルールとして場所を使用できますか?

場所を表示したい iOS アプリの拡張機能を実装しようとしています。たとえば、マップ アプリで共有ボタンをタップすると、共有オプション (メッセージ、Facebook twitter) とアクション オプション (印刷、お気に入りに追加) のメニューが表示されます。拡張機能がアクション セクションに表示されるようにしたいのですが、場所が存在する場合 (マップなど) に拡張機能を利用できるようにしたいと考えていますが、定義済みの info.plist アクティベーション ルール (NSExtensionActivationSupportsImageWithMaxCount や NSExtensionActivationSupportsMovieWithMaxCount など) はありません。位置。

場所でトリガーするアクション拡張機能の NSExtensionActivationRule を記述する方法はありますか?

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

ios8 - 共有拡張機能とキーチェーンを使用した iOS での GPPSignIn の問題

Google プラス サインインを使用する iOS 8 アプリ (目的 C) を作成しました。メイン アプリケーションとその共有拡張機能は同じキーチェーンを使用するため、GPPSignInButton を使用してメイン アプリケーションからサインインすると、拡張機能の認証が提供されます。問題は、2 つのターゲットが非常に特定の順序で実行されている場合にのみ、これを機能させることができることです。

これはうまくいきません:

  1. メインアプリケーションを開き、サインインします (成功)
  2. 共有拡張機能を開き、「trySilentAuthentication」を試みます - 共有拡張機能の場合、キーチェーンに認証がないため、これは失敗します。

ただし、これは機能します:

  1. 最初に共有拡張機能を開きます-予想どおり、キーチェーンに認証はありません
  2. メインアプリケーションを開き、サインインします (成功)
  3. 共有拡張機能を再度開きます。今回は、キーチェーンに認証があり、「trySilentAuthentication」が成功します。

したがって、メインアプリケーションがサインインする前に開かれない限り、共有拡張機能はキーチェーンの認証にアクセスできないようです。これはキーチェーンの一般的な問題ではないと思います。開かれた順序に関係なく、アプリと拡張機能の間のキーチェーン内のオブジェクトの種類。

2 つの別々の通常のアプリ (拡張機能なし) を使用して実験を行ったところ、同じ問題が発生することがわかりました。アプリケーションはキーチェーンで Google と認証を共有できますが、両方のアプリケーションが [GPPSignIn sharedInstance] にアクセスする機会が既にある場合に限ります。 ] - 共有インスタンスで何もする必要はなく、アクセスしただけです。最初に 1 つのアプリケーションにサインインしてから、既存のキーチェーンに参加しようとすると、既に存在する認証にアクセスできません。

以前にこの種の問題に遭遇した人はいますか、または認証プロセスをデバッグして順序が非常に重要である理由を知る方法を知っていますか?

0 投票する
3 に答える
9402 参照

ios - iOS ウィジェットのバックグラウンド アップデート

Apple が wi​​dgetPerformUpdateWithCompletionHandler: について述べていることによると、iOS ウィジェットは、ウィジェットが表示されていないときにもコンテンツを更新できます。

私のデバッグセッションで、通知センターのビューが消えるたびにtodayViewControllerの割り当てが解除されることに気付いたので、私の質問は次のとおりです。

割り当てが解除された場合、todayViewController はどのように widgetPerfomrUpdateWithComplationHandler に応答できますか?

ウィジェットが表示されていない場合でも、1時間ごとにコンテンツを更新する必要があります。どうすればそれを行うことができますか?

iOS ウィジェットのライフサイクルはどうなっていますか?

助けてください:)ありがとう