Android集成腾讯云通信关于全局消息监听的实现
伊谢尔伦
伊谢尔伦 2017-04-18 09:16:06
0
1
603

在Android集成腾讯云通信的时候遇到一个问题。在Activity中实现了腾讯云通信SDK里的TIMMessageListener类后通过onNewMessage方法接收云端的新消息。
但是,这个监听方法并不能在每个Activity里面实现。
1Activity里面实现了这个方法,并且在测试中接收到了新消息,但是跳转到2Activity之后再次实现了这个方法,并且在测试中也接收到了新消息,再返回到1Activity后就无法监听到新消息了,目测是因为在2Activity中这个方法被重新实现,所以之前实现的监听就报废了,当2Activity被销毁后,1Activity里面的监听无法恢复。
这是我碰到的问题。
我想问一下各位大神,该如何设计这个即时通讯功能。
比如说我需要在每个页面都监听新消息以便发送Notification,另外,需要给部分页面的图标增加角标,顺便在会话页面实现聊天过程。
本人刚刚入门,不是很了解整个流程,请大神指教。

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

membalas semua(1)
刘奇

Logik am IM:

  1. Laksanakan Service untuk menerima mesej tolak (iaitu, daftarkan TIMMessageListener SDK), dan kemudian panggil Context.sendOrderedBroadcast(Intent, String)untuk menyiarkan mesej dengan teratur

  2. melaksanakan android:priority="-999" daripada BroadcastReceiver dan mendaftarkannya dalam AndroidManifest.xml untuk menerima siaran yang dipesan yang dihantar oleh Service dan menghantarnya ke bar status melalui Notification Memandangkan tahapnya sangat Rendah , oleh itu, ia akhirnya akan menerima siaran di atas

  3. Daftar Activity dalam Fragment/BroadcastReceiver untuk menerima siaran yang dipesan di atas Memandangkan tahap lalai BroadcastReceiver ini lebih tinggi daripada BroadcastReceiver yang didaftarkan dalam 2, ia akan Siaran diterima. pertama, di sini kita boleh melakukan pemprosesan pemintasan (kod adalah seperti berikut): Selepas halaman perbualan dibuka, mesej baharu tidak akan diterima lagi melalui pemberitahuan bar status Apabila Activity/Fragment ditutup, nyahdaftar perkara di atas BroadcastReceiver , pada masa ini, pemberitahuan peringatan mesej baharu dalam bar status telah dipulihkan.

private BroadcastReceiver mReceiverInActivityOrFragment = new BroadcastReceiver() {
    // TODO ...
    setResultCode(Activity.RESULT_CANCELED); 
}

Isi pengetahuan utama:

  1. Siaran Tertib

  2. Kebenaran peribadi

Buku rujukan:

  • Panduan Definitif untuk Pengaturcaraan Android Edisi Kedua Bab 27-Niat Siaran (Edisi pertama ialah Bab 30, versi Bahasa Inggeris adalah seperti berikut)

  • Pengaturcaraan Android: Panduan Ladang Nerd Besar

p.s. Responden bukan penyokong buku Responden telah membaca buku ini sepenuhnya topik ini adalah masalah utama, jadi saya mengesyorkan agar fail elektronik bahasa Inggeris boleh dimuat turun dari Internet.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan