로컬 방송 메시지에 익숙해졌습니다. 나는 2 가지 활동을하고있다.내 활동이 수신되지 않습니다. 다른 활동에서 보낸 로컬 방송을
MainActivity :
두 개의 버튼이 있습니다. 1 버튼을 클릭하면 메시지가 방송됩니다. 다른 하나를 클릭하면 두 번째 활동으로 이동합니다.
public class MainActivity extends AppCompatActivity {
Button btn;
Button btn1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button)findViewById(R.id.sendBroadCast);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
sendMessage();
}
});
btn1 = (Button)findViewById(R.id.btn);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this,SecondActivity.class);
startActivity(intent);
}
});
}
void sendMessage(){
Log.d("RAK","Gonna send braodcast");
Intent intent = new Intent("customMsg");
intent.putExtra("message", "This is my message!");
LocalBroadcastManager.getInstance(this).sendBroadcast(intent);
}
}
두 번째 활동 :
이 활동에서 onCreate에서 수신기에 대한 등록.
public class SecondActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
Log.d("RAK","In oncreate of second activity.Registered for local receiver");
LocalBroadcastManager.getInstance(this).registerReceiver(mMessageReceiver,
new IntentFilter("customMsg"));
}
private BroadcastReceiver mMessageReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// Get extra data included in the Intent
String message = intent.getStringExtra("message");
Log.d("receiver", "Got message: " + message);
}
};
@Override
protected void onDestroy() {
LocalBroadcastManager.getInstance(this).unregisterReceiver(mMessageReceiver);
super.onDestroy();
}
}
내가 직면 한 문제는 두 번째 활동이 방송을 수신하지 않는다는 것입니다. 도와주세요.
피플 :이 사본에 중복 표시하지 마십시오. 나는이 링크를 따라왔다 : how to use LocalBroadcastManager?
감사합니다, 케쉬를
두 번째 활동이 위로 첫 번째는 하드 될 것입니다 방송을 송신하는 동안 실행해야 방송을 수신 할 수 있도록
어떻게 했습니까? 메시지를 보내시겠습니까? 내 말은, 먼저 앱을 실행하고 두 번째 버튼을 클릭 하시겠습니까? – Pein
'btn1'을 클릭하면 돌아가서'btn'을 클릭하면 어떻게됩니까 ?? –