Mae hysbysiadau yn peidio cyrraedd ffôn sydd fel arall yn pori yn iawn drwy VPN y cwmni. Mae tudalennau yn llwytho, mae’r ap yn agor, ond dim ond gartref neu ar ôl diffodd y twnnel y mae negeseuon yn ymddangos. Ar gyfer ap a adeiladwyd ar Firebase Cloud Messaging, mae’r sianel push yn gysylltiad allan hir ar wahân, nid y llwybr HTTPS y profodd y porwr newydd. Ewch drwy’r gwiriadau hyn yn eu trefn ac arhoswch ar yr un cyntaf sy’n methu.

Cadarnhawch fod yr ap yn defnyddio FCM mewn gwirionedd

Nid yw pob hysbysiad yn push. Mae rhai yn cael eu trefnu’n lleol gan yr ap, mae rhai yn cael eu harolygu dros HTTPS, ac mae rhai yn cyrraedd drwy sianel gwerthwr heb unrhyw gysylltiad â Firebase. Os yw manifest a dibyniaethau’r ap yn cynnwys Firebase Messaging, mae ei hysbysiadau fel arfer yn teithio dros gysylltiad FCM, ac mae’r llyfrgell cleient yn cofnodi’r cofrestriad o dan dag y gellir ei ragweld.

adb logcat -s FirebaseMessaging:V
adb shell dumpsys package <package> | grep -i firebase

Mae tocyn cofrestru yn y log yn cadarnhau’r cludiant. Hebddo rydych yn dadfygio pibell hysbysiadau ar lefel ap, ac ni fydd newidiadau mur tân yn helpu. Mae’r gwahaniaeth hwn yn bwysig oherwydd bod neges a ddosbarthwyd ond na chafodd ei dangos erioed a neges na chyrhaeddodd erioed yn edrych yr un fath i’r defnyddiwr.

Gwiriwch y porthladdoedd allan, nid y wefan

Cysylltiadau dyfeisiau FCM yw TCP sy’n tarddu o’r ffôn i borthladd 5228, gyda 5229 a 5230 fel dewisiadau a 443 fel y dewis olaf. Gall mur tân sy’n caniatáu 443 ar gyfer pori dorri’r push o hyd, ac nid yw rheol sy’n caniatáu parth API yr ap yn cynnwys pwyntiau terfyn negeseuon, gan mai gwasanaethau ar wahân ydynt.

Cysylltiadau allan o’r ffôn ydy’r rhain. Nid ydych yn cyhoeddi porthladd i mewn ar y ddyfais nac ar giatwy VPN, felly os yw rhywun yn awgrymu anfon porthladd ymlaen, mae’r dyluniad eisoes yn anghywir. Mae’r un peth yn wir am reol sy’n agor un porthladd i bob cyfeiriad ar y rhyngrwyd: cyfyngwch hi i’r cyrchfannau sydd wedi’u dogfennu.

PortRoleWhat to verify
5228Primary FCM connectionOutbound allowed and session state kept
5229, 5230Fallback portsOften missing from hand-written allowlists
443Last-resort fallbackWorks only if the client actually falls back
HTTP proxyNot a supported FCM transportProxy exclusion or bypass, not a port rule

Canllaw rhwydwaith Firebase hefyd yn dweud na ellir cludo protocol dosbarthu FCM dros ddirprwy HTTP cyffredin. Felly nid yw porwr yn llwyddo drwy ddirprwy gwe’r cwmni yn profi dim am y soced push: dau gleient gwahanol gyda dwy lwybr wahanol ydynt.

Gwiriwch y terfynau amser segur sy’n lladd y soced

Mae’r cysylltiad FCM yn aros ar agor rhwng negeseuon, sy’n ei wneud yn sensitif i derfynau amser NAT ac archwiliad cyflwr. Mae canllaw Firebase yn gofyn am o leiaf 30 munud o oddefgarwch segur lle mae’r polisïau hynny yn berthnasol. Mae terfyn amser sesiwn o bump munud yn tynnu’r mapio yn dawel, ac nid yw’r ffôn yn ailgysylltu nes bod rhywbeth yn ei ddeffro, felly mae negeseuon yn cyrraedd yn heidiau neu ddim o gwbl.

Darllenwch dabl sesiynau’r mur tân neu’r giatwy VPN a dod o hyd i gysylltiad y ffôn â 5228-5230. Cymharwch ei oes sy’n weddill â’r gwerth a nodwyd. Os yw’n fyrrach, codwch y terfyn amser ar gyfer y porthladdoedd hynny yn lle newid pob polisi ar y ddyfais.

Mae dosbarthu hefyd yn dibynnu ar a yw mapio’r pwynt terfyn yn goroesi symud rhwng Wi-Fi a’r rhwydwaith symudol. Gall mapio sy’n seiliedig ar un rhyngwyneb gael ei golli yn y trosglwyddiad hyd yn oed pan fydd y ddwy rwydwaith yn caniatáu’r porthladdoedd.

Penderfynwch a yw cylchdaith VPN yn dderbyniol

Gall cleientiaid VPN Android ganiatáu i draffig osgoi’r twnnel, a gall FCM ddefnyddio’r rhwydwaith sylfaenol pan ganiateir y gylchdaith honno. Mae’r sianel push yn parhau wedi’i hamgryptio, ond nid yw bellach yn cario cyfeiriad y twnnel, felly nid yw cuddio IP y VPN yn berthnasol iddi. Masnachfraint polisi yw hwn, nid camweithrediad.

Os yw eich polisi yn gwahardd cylchdaith, rhaid i lwybr y twnnel gario’r cysylltiad: porthladdoedd ar agor, terfynau amser yn ddigon hir, dirprwy allan o’r ffordd. Peidiwch ag eithrio gwasanaeth a reolir yn dawel na llacio’r clo dim ond oherwydd bod hysbysiadau yn gweithio ar rwydwaith heb ei reoli. Nid yw eicon y VPN yn dweud pa lwybr a ddewisodd gwasanaeth penodol.

Gwahanwch ddosbarthu oddi wrth arddangos, yna profwch unwaith

Mae caniatâd, gosodiadau sianel, Peidiwch â Tharfu a thogloedd pob ap yn penderfynu a ddangosir neges a ddosbarthwyd. Ar Android 13 ac yn ddiweddarach mae caniatâd hysbysiadau yn rhodd amser rhedeg, ac mae gwrthodiad yn cynhyrchu distawrwydd sy’n edrych yn union fel porthladd wedi’i rwystro. Mae neges a gyrhaeddodd ond na chafodd ei dangos yn broblem arddangos, triniwch hi ar wahân.

Gwnewch un prawf rheoledig yn lle anfon negeseuon yn fympwyol. Cadwch y ddyfais, y cyfrif a’r ap yn sefydlog, anfonwch un neges gyda stamp amser hysbys, a chymharwch gyflwr y VPN â rhwydwaith cymeradwy heb VPN. Cofnodwch amser derbyn y logcat ac amser yr arddangos ar gyfer pob rhediad. Os yw dosbarthu yn wahanol ond arddangos yr un fath, y llwybr rhwydwaith yw’r newidyn; os yw’r ddau yr un fath, parhewch i edrych ar yr ap.

Rhowch y porthladdoedd, cyfyngiad y dirprwy, y terfyn amser a fesurwyd a’r penderfyniad cylchdaith i berchennog y rhwydwaith mewn un nodyn. Nid yw diffodd y VPN yn ddarganfyddiad, ac nid yw caniatáu holl draffig Google yn atgyweiriad cyfyngedig.

Erthyglau cysylltiedig