2017-11-25 24 views
0

私のアンドロイドアプリでは、ブロードキャストレシーバからサービスを呼び出していますが、デバッグ中にブロードキャストレシーバが動作していないことがわかりました。そして、などのレイアウトやボタンなぜブロードキャストレシーバがサービスを呼び出さないのですか

放送受信機クラス

public class Myreceiver extends BroadcastReceiver { 
@Override 
public void onReceive(Context context, Intent intent) { 
    Intent i=new Intent(context,MyService.class); 
    context.startService(i); 

} 

}

とマニフェスト

<receiver android:name=".Myreceiver" > 
    </receiver> 
    <service android:name=".MyService" /> 
</application> 
+1

BroadcastReceiverはいつトリガされるべきですか?あなたは任意のアクションをプログラムで定義しましたか?私は間違いなくマニフェストにアクションを見ません。 – Pavan

+0

ブロードキャストを有効にする操作は何ですか? – diegoveloper

+0

トリガーポイントをコード内に明示的に定義する必要があります。 – bond007

答えて

1

あなたが登録した放送受信機では、あなたの活動のような主な活動には何もありません

Myreceiver myreceiver = new Myreceiver(); 
    IntentFilter intentFilter = new IntentFilter(); 
    intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION); 
    registerReceiver((BroadcastReceiver) myreceiver, intentFilter); 
+0

thanks.iはアクティビティに登録していません – AkashK

関連する問題