-2

I would like to thank you first. For your precious time. I did android application. Research research. But I noticed something. I have much Activity. I want all of them to listen when an incident happens.

unfortunately I've learned about the listener. However, the listener is the only activity.

When listening to music, I need to show people this.

I'm sorry for my bad english. That's what I want. A Activity B Activity C activity D activity These are my activities.

B activity performed. For example; Music played.

The others will listen.

public void listen (int id, String method) {

// update activity layout
}
Phantômaxx
  • 37,901
  • 21
  • 84
  • 115
  • Sorry your english is not clear. Maybe you want to try StackOverflow in other languages? – m0skit0 Oct 13 '18 at 19:06
  • Hi Ismail, I can see that you are Turkish. Turkce anlatabilirsen yardimci olabilirim. – keser Oct 13 '18 at 19:10
  • 1
    teşekkür ederim. Türkçe anlatmam daha iyi olur. Ben android uygulaması yaptım. Araştırdım aradım ettim. Bir şeyler çıktı. Ancak çok activity kullandığım için açık activity dinleyici yerleştirmek istiyorum. Yani bir müzik çaldığında açık olan activitylerde görüntüde mini player göne haldeyken etkinleştirmek gibi şeyler. – ismail aytekin Oct 13 '18 at 19:12
  • 1
    I updated the topic. As far as I can with translation. I wanted to speak English. – ismail aytekin Oct 13 '18 at 19:18
  • 1) Android uygulamaniz tam olarak ne yapiyor? Music Player mi? 2) Sorunuz Listener'in nasil kullanildigi mi? 3) mini playerdan kastiniz nedir? bir widget mi? – keser Oct 13 '18 at 19:18
  • evet uygulamam müzik dinleme. Ben de 6 tane activity dosyası var. Birinde bir eylem gerçekleştiği zaman, diğerlerine haber vermek istiyorum. Bu arada widget değil ama widget işimi görürmü bu olayda ben ne aramam gerekiyor. Sadece şu işinizi görür demeniz yeterli – ismail aytekin Oct 13 '18 at 19:21
  • Digerleri bu haberi aldiklarinda calisacaklar mi? ne yapacaklar – keser Oct 13 '18 at 19:22
  • aynen diğerleri bu haberi aldımı layout düzenlemeler yapcaklar – ismail aytekin Oct 13 '18 at 19:22

2 Answers2

0

You could use listeners, but since this can be challenging for you, I suggest that you use shared preferences or Intent - putExtra() method for your layout updates.

For example,

You can save a value in sharedpreferences from your activity A, when you update it from Activity B, this value will be changed in all over your app.

keser
  • 2,472
  • 1
  • 12
  • 38
  • listener kullanabilirsiniz ama zor gelebilir, onun yerine shared preferences degerleriyle oynayarak diger tum activitylerde cagirdginiz sharedpreferences degerlerini de degistrebilirsiniz – keser Oct 13 '18 at 19:28
  • 1
    zaten MyApp ve BaseActivity var. Değerlere erişebiliyorum sadece onu dinlemek istemiştim. Bunları deneyeceğim – ismail aytekin Oct 13 '18 at 19:33
  • cevabin yanindaki yukari ok ve tik isaretine basarsaniz sevinirim – keser Oct 13 '18 at 19:35
  • 1
    Bu dinleyiciyi denemiştim ama sadece A activity çalışıyordu. Dediğiniz gibi yeni bir activity açıldığında yapabilirim. Benim activity kapanmadan güncelleme yapamazmıyım ? – ismail aytekin Oct 13 '18 at 19:35
  • Size tavsiyem android ve java konusunda biraz daha arastirma yapmaniz ve acele etmemeniz. Oldukca karmasik konular. – keser Oct 13 '18 at 19:36
  • 1
    ben bunun farkındayım. Mesela şöyle söyleyim size. Node js kullandıysanız socket gibi bir şey istiyorum. Ben işin aslı – ismail aytekin Oct 13 '18 at 19:45
  • o zaman custom listeners ile alakali arastirma yapmanizi oneririm. – keser Oct 13 '18 at 19:46
  • 1
    teşekkür ederim zamanınız için. – ismail aytekin Oct 13 '18 at 19:52
0

listening activity Sample MainActivity

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
  LocalBroadcastManager.getInstance(this).registerReceiver(
                mMessageReceiver, new IntentFilter("listen_test"));
     }

  private BroadcastReceiver mMessageReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            // TODO Auto-generated method stub

            String content = intent.getStringExtra("content");
             //log content

           Log.e("tag", "listen: "+content,null );
        }
    };

Other Activity Test send listen_test

    Intent xx = new Intent("listen_test");

    xx.putExtra("content", "test content");
    LocalBroadcastManager.getInstance(this).sendBroadcast(xx);

if activity pause stop listen ? insert MainActivity please

 @Override
    protected void onPause() {
        LocalBroadcastManager.getInstance(this).unregisterReceiver(mMessageReceiver);

        super.onPause();

    }
tolgatasci
  • 152
  • 1
  • 11