Tham dự Tech Lounge

Tham dự Tech Lounge


Notification hoạt động như thế nào? Tắt bớt thông báo có tiết kiệm pin không?

Duy Luân
2/8/2021 1:3Phản hồi: 126
Notification hoạt động như thế nào? Tắt bớt thông báo có tiết kiệm pin không?
Notification, hay còn gọi là thông báo trên điện thoại, không phải do app tự “kéo” về như cách mà bạn thường nghĩ. Thay vào đó, iOSAndroid có cơ chế riêng để nhận notification ngay cả khi bạn đã tắt app, và cơ chế này nhằm đảm bảo trải nghiệm của bạn vẫn tốt, máy không hao pin nhanh mà bạn vẫn nhận được các cập nhật của mình một cách kịp thời.

Có 2 loại notification trên iOS và Android


Loại thứ 1: push notification, hay còn gọi là remote notification, là thông báo do máy chủ của một dịch vụ nào đó gửi cho bạn khi có các thay đổi, ví dụ khi có ai đó like bài của bạn trên Tinh tế, server của Tinh tế sẽ gửi cho bạn một thông báo. Khi bạn được công ty chuyển lương, server của ngân hàng sẽ gửi thông báo cho bạn. Hay khi bạn đang theo dõi một channel trên YouTube mà họ đăng video mới, bạn sẽ được thông báo từ server của YouTube. Do được gửi từ server của dịch vụ mà bạn dùng nên mới gọi là “remote”, tức là nó ở xa, không phải nằm trên máy của bạn.

push_notification.jpg

Loại thứ 2: local notification, hay có người gọi là on-device notification, là những thông báo từ các app chạy nội bộ trên điện thoại của bạn, nó được kích hoạt từ một sự kiện diễn ra trên thiết bị, không phải từ máy chủ. Ví dụ, khi bạn download xong một file thì app báo “đã hoàn thành”, hay khi bạn hẹn giờ báo thức thì đến đúng giờ nó sẽ hiện thông báo lên.

Trên iOS và Android đều phân làm hai loại như thế, cách hoạt động của tụi nó cũng tương tự như nhau mà thôi.

local_notification.jpg

Ngoài ra còn có một loại thứ 3 nữa gọi là Background/Data notification. Thông báo dạng này sẽ không có bất kì thứ gì hiện lên cho bạn xem, cũng không có âm thanh gì phát ra, cũng không hiện số đếm thông báo. Data notification được sử dụng để giúp app cập nhật thông tin mới ngay cả khi nó đang không chạy, chẳng hạn như app tin tức lâu lâu mới lên bài mới, thì họ có thể dùng data notification để update sẵn nội dung, khi bạn mở app ra là thấy ngay.

Trên iOS và Android, nếu bạn force close một app thì nó không thể nhận data notification, và data notification cũng thuộc dạng ưu tiên thấp, hệ điều hành không đảm bảo app sẽ nhận được. Data notification cũng bị giám sát số lượng, nếu quá nhiều thì iOS và Android sẽ chặn. Con số chính xác không được tiết lộ, nhưng Apple khuyên các app không được gửi nhiều hơn 2 hoặc 3 tin mỗi giờ.

Push notification được gửi đến máy của bạn như thế nào?


Local notification thì dễ hiểu rồi, những gì xảy ra trên điện thoại, iPhone, iPad của bạn thì nó lòng vòng trong máy thôi. Nhưng làm sao một máy chủ ở xa có thể đưa thông báo đến cho bạn xem? Để làm được việc này, Google và Apple đã xây dựng nên một giải pháp rất hay để vận hành. Với những máy nào không có Google Play Services, ví dụ các máy của Huawei chẳng hạn, thì họ tự xây dựng một giải pháp tương tự chứ không cần đến Google.

Mô hình của giải pháp này như sau:
so_do_notification.jpg

Như bạn thấy đó, trong luồng trên không có một đường nào là app trên điện thoại tự “kéo” thông báo về như cách mà chúng ta thường hiểu. Thay vào đó, thông báo sẽ được gửi đến bạn nhờ vào hai dịch vụ là Apple Push Notification Service (APNS) và Google Firebase Cloud Messaging (FCM). Hai dịch vụ này là hàng chính chủ, của riêng hệ điều hành nên chúng có thể duy trì kết nối với điện thoại một cách liên tục và không gây hết pin nhanh.

Quảng cáo


Nếu để cho app “tự kéo” thông báo, app sẽ cần phải duy trì kết nối liên tục với máy chủ của app, như vậy sẽ rất hao pin nếu không được triển khai một cách chuẩn chỉnh. Mà với số lượng app lên đến hàng triệu, không có cách nào đảm bảo app sẽ triển khai đúng cách nên tốt nhất là Apple, Google chặn luôn cho an toàn.

Ngoài ra, cơ chế trên còn đảm bảo rằng ngay cả khi app không chạy (dù là mở app foreground hay không chạy background), bạn vẫn nhận được thông báo bình thường. Ví dụ, app ngân hàng đâu phải lúc nào cũng hoạt động, lâu lâu bạn mới mở nó ra một lần cơ mà, và rõ ràng app ngân hàng cũng chẳng cần phải chạy nền làm gì cả. Mà khi nó không chạy liên tục thì không thể tự “kéo” thông báo được. Nếu không có APNS hay FCM, bạn sẽ bị bỏ lỡ thông báo mất, còn nhờ có sự trung gian của Apple, Google mà thông báo vẫn đến được với điện thoại của bạn kịp thời.

Mọi app trên Android và iOS đều phải gửi thông báo theo cách này, không có ngoại lệ. Như mình nói ở trên, với điện thoại Huawei không có Google Play thì họ tự dùng dịch vụ tương tự, gọi là Huawei Mobile Services (HMS), còn quy trình hoạt động là như nhau.

Trong các thông báo, thường sẽ đi kèm theo một số thông tin như tiêu đề, nội dung thông báo, icon cần hiển thị, màu sắc, hình ảnh muốn hiện ra, nếu bấm vô thông báo thì sẽ mở ra màn hình nào và tải nội dung gì. Sau này iOS và Android còn có thêm các nút chức năng để thông báo hoạt động nữa. Những dữ liệu này thường được gọi là “payload” và sẽ nằm trong thông báo gửi từ server đến Apple / Google và gửi tiếp xuống máy của bạn.

Tắt thông báo của một app có khiến máy đỡ hao pin hơn không


Thực tế sử dụng của mình là mức hao pin này rất nhỏ, không đáng kể, nên cách này không có lợi ích thực tế. Thông báo được gửi từ server nên bạn tắt app, chặn app thì cũng không giúp được mấy do trên điện thoại của bạn vẫn còn cả chục app khác cần đến notification, và kết nối từ iOS, Android lên APNS hay FCM vẫn luôn được duy trì dù bạn có tắt tùy chọn thông báo của app đi nên cũng không hữu ích cho việc tiết kiệm pin. Có chăng là đỡ hao được chút lúc màn hình sáng lên khi có thông báo tới, nhưng nó cũng chỉ kéo dài trong khoảng 10 giây rồi tắt, so với mỗi lần bạn mở máy lên dùng liên tục, so với việc bạn dùng 4G 5G, xem video online, chơi game, xài Facebook… thì mức này quá nhỏ, không cần phải để tâm nhiều cho mệt.

Tùy chọn tắt thông báo trên các hệ điều hành là nhằm cho bạn một sự kiểm soát với việc nhận thông báo, tránh bị các app lạm dụng và làm bạn cảm thấy phiền.

Quảng cáo



Muốn tiết kiệm pin, hãy bật chế độ tiết kiệm pin của iOS và Android, lúc đó nó giới hạn kết nối mạng nói chung từ tầng hệ điều hành, giới hạn các tiến trình chạy nền và nhiều thứ khác nữa, lúc đó mới thật sự là kéo dài được thời gian dùng pin của bạn.

Chưa kể, nếu bạn cố gắng tắt hết mọi thông báo chỉ để tiết kiệm pin thì bạn đang phí cái smartphone rồi 😁 Xài mà cực quá thì khổ lắm. Thà mua ngay một con điện thoại pin trâu ngay từ đầu, xài cho sướng đi anh em. Giờ điện thoại pin đều tốt cả mà, từ cao cấp đến giá rẻ, chắc trừ iPhone 12 mini thôi hahaha. Tắt thì tắt thằng nào bạn cảm thấy không cần thôi.
126 bình luận
Chia sẻ

Xu hướng

Cám ơn bạn đã chia sẻ cách 1 app duy trì kết nối với sever để thông báo ko gây hao pin nhiều.
Nhưng khi để các app mà mở hết thông báo thì kéo theo màn hình sáng liên tục thì hao pin hơn là tắt. Theo như mình nghĩ đa số mọi người tắt thông báo để màn hình khỏi sáng lên khi không cần thiết thì đỡ hao pin nhiều chứ?
@ngghuyy Bạn chẳng hiểu gì. Bên Android thì Fcm nó nhận toàn bộ push tới và system push thông báo lên không cho app xử lý payload nếu màn hình tắt, hoặc app đã stop. Khi user mở thông báo thì nó bắt đầu xử lý payload bằng field "click_action", nếu không có thì nó mở activity mặc định
@Duy Luân Mình cũng tắt bớt notification của những ứng dụng không cần thiết, 1 la đỡ hao pin (20 ứng dụng , mỗi ứng dụng 10 cái push -> 200 púh/ngày rồi, có thể 1 push tốn rất ít năng lượng, nhưng xử lí của mỗi app sau khi nhận push có thể khác nhau), 2 là đỡ bi làm phiền.
@Dân Trí Thấp App xử lý mà bạn không click vô thì nó cũng đâu có chạy app lên, lo gì. Đỡ làm phiền thì ok, chứ không giúp tiết kiệm pin bao nhiêu đâu
Louis09
ĐẠI BÀNG
3 năm
@Mr_Khuyen Lý do tắt thông báo như bạn mới là đúng nghĩa, và mình cũng thế. Còn tốn pin thì rõ ràng không đáng nhiêu đâu.
huylly
ĐẠI BÀNG
3 năm
Có 1 cái nữa là Push trên iOS khác với Android, trên iOS ko tốn ram, hầu như hao pin là ở phần sáng màn hình, còn Android thì ngược lại, nhận push notification có tốn ram, nếu push liên tục cường độ cao có thể gây treo máy
Namgmail
ĐẠI BÀNG
3 năm
@Reah Notification trong android có gắn cờ mức độ ưu tiên loại ưu tiên thấp và không có tiếng không bật sáng màn hình
Hợp wp
TÍCH CỰC
3 năm
@Quy Le Anh thêm combo nhấp nháy flash
wenquan
TÍCH CỰC
3 năm
@Mr_Khuyen Nó vẫn hiện lên always on display. Mình tắt hết đi, chỉ liếc qua AOD là biết ngay mình đang có những Noti gì. Cực tiện và tập trung vào công việc hơn.
@huylly tui cũng có trải nghiệm ko tốt vs thằng android. Lúc trước cả ngày ko bật kết nối, tối về nhà android nó push noti liên tục nghe ong cả tai, iphone thì nó push tầm 5 cái đầu mấy cái sau nó ko có tiếng nữa. Từ đó bai luôn con pixel
M tắt nhiều lắm, nhiều app chả cần nó báo nó cũng báo! như máy vợ m nói riêng và các bà nói chung thì cứ mở noti lên nó dài như 1 trang sớ... 😁
@thealley Đúng r bác. Có nhiều app như tmđt push nofi kinh luôn. Hux nên mình tắt để ko bị làm phiền
@Reah Các bà dùng ip rất ngược đời, cái đa nhiệm suốt ngỳa đóng còn cái noti thì k bao giờ xoá


Chu choa nó dài 😆
@NicolasNgo3012 Tiện thì xoá còn k thì kệ bà ý 😆 các bà ý dùng thấy thoải mái k để ý mấy vụ đó đâu. M cứ tắt mắt lại hay khó chịu thôi
@Double D Haha uhm khi nào cầm máy thấy thì xoá dùm ko thì thôi.
Nó không hao tốn nhiêu mà phiền phức khi các app thông báo ầm ầm
mrdrg10
TÍCH CỰC
3 năm
Vừa đúng vừa không.
Ý chủ đạo bài viết nói rằng đừng quan tâm tốn pin hay ko thì đúng, nhưng bảo không tốn thì ko đúng (như Bluezone vậy)
1. Cái này là giả định, chưa biết Apple hay Google có cơ chế khi bạn tắt noti của 1 app thì thông tin đó sẽ được gửi lên server của họ, và những package lquan tới mấy app này sẽ ko được chủ động push xuống client thì sao. Nên là tiết kiệm pin hay ko ở cơ chế gửi thì chưa chắc, chỉ có kỹ sư của Apple/Google trả lời dc.
2. T2 quan trọng hơn là khi có noti thì màn hình và âm thanh sẽ bật. Đây mới là tác nhân gây tốn pin nhiều. Đừng bảo sáng 5 10s ko tốn. Nó tốn nhiều là đằng khác. Thử 1 hôm tắt hết noti xem nó có pin trâu hơn hẳn ko.

Vẫn mong 1 cái noti khôn hơn trên iOS ở việc quá nhiều tin nhắn của 1 app (phân biệt được group nữa thì tốt) mà bắn quá nhiều thì sẽ tự giảm tần suất lại. Mấy cái rom android có tính năng này chắc gần thập kỷ rồi mà iOS vẫn lom dom.
@mrdrg10 Nó sáng màn hình khi mình để điện thoại trong túi, rồi nó nhận những cảm ứng lạ khi ở trong túi dẫn đến bật đèn flash, tắt âm, tắt wifi, bật chế độ máy bay, bla bla bla.
không kể đến nó có thể cứ bật sáng màn hình trong túi mà mình ko hề hay biết, đến lúc thấy nóng túi rút ra thì gần hết pin, kịch bản này gặp suốt trên máy android
zxcvbn78z
ĐẠI BÀNG
3 năm
@【iTinhTế】 bạn dùng máy cũ à, máy gần đây đều có Bảo vệ vô tình chạm, kiểu khóa cảm ứng để dt trong môi trường tối đấy
mrdrg10
TÍCH CỰC
3 năm
@max-20091 Bạn ko hiểu ý mình rồi. Bluezone là 1 ví dụ khi người ta quảng cáo là ko tốn pin, thực tế là tốn pin gần như ko đáng kể, giống cái noti này.
Còn cơ chế thông báo mới đè thông báo cũ của Apple là sao, lần đầu tiên mình nghe thấy, tắt mạng bật lại thì cả Google lẫn Apple đều bắn loạt noti ko gửi dc.
Dù sao ý mình muốn nói là chắc chắn noti sẽ ảnh hưởng tới pin, nhưng với mình nó chả đáng là bao nhiêu. Cái cần cải tiến là làm noti nó thông minh hơn, khi mà mình join khá nhiều group thì noti nó spam liên tục luôn. Phiền.
@mrdrg10 iOS chỉ nhận tối đa 64 thông báo thôi bạn, còn vượt 64 thì thông báo cũ sẽ bị xóa mất ko như Android mặc định ko bị giới hạn thông báo (nghe bảo đâu ROM Samsung giới hạn tầm 500) 😃
Ngoài ra còn 1 số giới hạn khác như ko đc hơn 2-3 thông báo trong 1 tiếng nếu là loại low priority.
tung3tvn
ĐẠI BÀNG
3 năm
bài viết nói force close app thì app vẫn nhận được noti đẩy xuống. Nhưng thực tế sử dụng nhiều app OTT nếu force close hoặc lâu ko mở app thì khi có tin nhắn mới cũng ko báo noti luôn. Điển hình là Viber
@tung3tvn vậy là lỗi gì đó, hoặc cơ chế đặc biệt của họ, không phải cơ chế push noti chung đâu bạn
Có chứ, cái nào ko cần thông báo thì tắt đi, vừa đỡ phiền lại ko sáng màn thì tất nhiên đỡ tốn pin r
Cái notif bên iOS nó không có gom lại, mà nhảy liên tục... Phần khó chịu nhất luôn 😔(
tancantn
TÍCH CỰC
3 năm
K biết có đỡ tốn pin hay k, nhưng đỡ phiền
Thông báo tắt đi không phải vấn đề lo bị hao pin, mà do phiền phức quá nên tắt đi thôi. 😁
Như iphone nó cứ sáng màn hình mỗi khi có thông báo, cũng ức chế lắm chứ. :D
@manchirua thực ra bạn tắt cái thông báo ở màn hình khóa đi là nó k sáng nữa thôi mà
@Pisces.Mist biết vậy nhưng hay bị lỡ thông báo 😁
Mình thấy ko cần thiết phải tắt cho lắm
Tinhte là tắt rồi, không cần thiết
Cười vô mặt
Chỉ bật notification mạng xã hội Facebook messenger Zalo Instagram telegram và bank còn lại tắt hết vấn đề pin không quan tâm mà nó phiền thôi như shoppe .... Mấy app không cần notification
đọc là biết chưa xài huawei rùi =)))
tắt thông báo thì pin dư ra thêm 1 khúc ít nhất 20% nhất là mess với fb
à kiểm chứng từ mate 20p (có Google), 7i và con p40p rùi nhé
còn nếu vừa tắt thông báo, tắt chạy ngầm và bật tiết kiệm pin thì 40% là ít đấy
Quan trọng nó phiền
Dimita
ĐẠI BÀNG
3 năm
Tắt thông báo chỉ đỡ phiền chứ tác dụng tiết kiệm pin là không đáng kể 😁
Ếk Kốm
TÍCH CỰC
3 năm
Mình chỉ tắt mấy cái thông báo ko cần thiết như thông báo quảng cáo, thông báo của mấy app không cần đến thông báo như app chỉnh ảnh,...
jin_279
TÍCH CỰC
3 năm
tắt cho nó đỡ rối mắt thôi chứ đt mình ko sợ hao pin 😌
Không hiểu tại sao cơ chế push như nhau nhưng iPhone luôn nhận thông báo trước Android nhỉ? Đã check hết tất cả noti rồi trình tiết kiệm pin, để ứng dụng luôn chạy nhưng vẫn chỉ khi bật máy lên thì mới nhận 1 loạt thông báo. Rất lạ.
@dtrung98 Cả Samsung cũng vậy bạn nha. Chỉ là mình chưa thử Pixel.
@ZeroXHunter86 pixel vs ip cũng có delay rõ ràng luôn đó ông 😁
@Đức Nguyễn 196 Sao mãi không khắc phục vấn đề này nhỉ.
@ZeroXHunter86 wao, bạn bán đth hay sao mà dùng nhiều vậy.

Xu hướng

Bài mới









  • Chịu trách nhiệm nội dung: Trần Mạnh Hiệp
  • © 2024 Công ty Cổ phần MXH Tinh Tế
  • Địa chỉ: Số 70 Bà Huyện Thanh Quan, P. Võ Thị Sáu, Quận 3, TPHCM
  • Số điện thoại: 02822460095
  • MST: 0313255119
  • Giấy phép thiết lập MXH số 11/GP-BTTTT, Ký ngày: 08/01/2019