これが実行されているかどうかをテストし、メソッドIntentService
を作成する必要があります。true または false のように返されます。 static
isInstanceCreated()
私は何が起こるかを学ぼうとしています.あなたが私に従ってくれることを願っています
..
1- 私は GC に関して呼び出しますisInstanceCreated()
(BroadcastReceiver
私の考えでは、BroadcastReceiver
終了して GC の資格がある場合、IntentService
も GC の資格があります)。
isInstanceCreated()
2-GCに関してクラスから呼び出す場合Application
(私の考えはIntentService
、Androidがアプリケーションを殺すときのGCです)
3- 静的クラス メソッドのアクセサは参照何かを保持します..???
4-静的最終フィールドはコンパイラによってハードコーディングされており、静的最終フィールドにアクセスするときに、静的ブロックやフィールドなどのクラス内の静的なものが読み込まれないことを知っています。しかし、ここで を呼び出すとどうなるかというとisInstanceCreated()
、コードに書かれているように、静的な要素は上から右下に読み込まれます。しかし、 を呼び出すときのメモリ消費はどうでしょうかisInstanceCreated()
。New
orを使用してクラスをインスタンス化するclass.forname
と、インスタンスが作成され、ホールクラスにメモリが割り当てられます。私が呼び出すisInstanceCreated()
と、クラス全体もメモリを占有します(最初にインスタンス化する必要があるため、もちろん非静的なものには誰もアクセスできません)。あなたが私の学習曲線に従って、何らかの答えを出してくれることを願っています。
public class MyIntentService extends IntentService {
private static boolean stopNow;
private Integer someInt = 10;
private static MyIntentService instance = null;
@Override
public void onCreate() {
super.onCreate();
instance = this;
}
public MyIntentService() {
super("MyIntentService");
}
public static boolean isInstanceCreated(){
return instance != null;
}
@Override
protected void onHandleIntent(Intent intent) {
}
public boolean someMethod(){
{
// much more methods
}
私はこれがうまくいくことを知っていますが、Dianne Hackborn による getRunningAppProcesses の悪い解決策