1

Android アプリの「バックエンド」に Ion/AndroidAsync を使用することに興味があります。Android コンポーネントに関連付けられた実行時間の長い呼び出しを行いたくないので、が生きている限り生き続けるバックグラウンド レイヤーを用意してApplicationいます。このバックグラウンド レイヤーには、UI が非同期呼び出しを行ってさまざまなタスクを実行できるようにする API がありFuture、必要に応じてコンポーネント間で渡すことができるように、UI に (メイン スレッドで実行されるコールバックも可能) を返します。 .

Ion の API は気に入っていますが、Activity から呼び出したくありません。むしろ、「タスク」はネットワーク呼び出しと組み合わせて他の長時間実行操作を実行する必要がある場合があるため、バックグラウンド レイヤーで使用したいと考えています。そうは言っても、アプリケーションContextをに渡した場合、何か問題が発生しIon.with()ますか?

4

2 に答える 2

4

Application Context で問題なく動作します。Application コンテキストが死ぬことはないため、リクエストがキャンセルされることはありません。しかし、それはあなたが望むものです。

于 2014-05-25T02:31:00.230 に答える
0
  1. 私のプロジェクトは、すべての画像のアプリケーション コンテキスト リクエストで Ion デフォルト インスタンスを使用しています。
  2. http://www.programcreek.com/java-api-examples/index.php?api=com.koushikdutta.ion.loader.HttpLoader
    このオープン ソースの例では、コンテキストを使用してアプリケーション コンテキストを取得します。したがって、アプリケーションも使用できます。
  3. しかし、Ionインスタンスにはアプリケーション参照があります.長いタスクはアプリケーションインスタンスのリークを引き起こす可能性があると思います.
  4. Ion.getDefault(Context context).cancelAll(Object o); アプリケーションにとって、リクエストタスクをより適切に管理できます。
于 2015-12-31T04:48:51.517 に答える