GCM サービスからの登録解除とアクティビティで宣言された放送受信機の登録解除の間に誤解があると思います。
あなたが投稿したエラーの種類:
MainActivity は、もともとここに登録されていた IntentReceiver MainActivity$1@416321f0 をリークしました。unregisterReceiver() への呼び出しがありませんか
Intents
でメッセージを受信したときに、broadcastreceiver を使用して GCMIntentService からを受信したときのように見えますonMessage()
。
private final BroadcastReceiver myBroadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
....
}
}
この場合、はいunregisterReceiver(myBroadcastReceiver)
、メモリ リーク エラーを void に呼び出す必要があります。
このアクションはプッシュ通知をキャンセルするのではなく、boadcastreceiver がそれらのインテントをリッスンするのを停止するだけです。GCMintentService は引き続きメッセージを受信します。