Od wersji 59 Chrome powiadomienia wysyłane za pomocą interfejsu Notifications API lub chrome.notifications API rozszerzeń będą wyświetlane bezpośrednio przez natywny system powiadomień macOS, a nie przez własny system Chrome.
Ta zmiana sprawia, że Chrome na macOS jest lepiej zintegrowany z platformą i naprawia wiele od dawna występujących błędów, takich jak nieprzestrzeganie przez Chrome ustawień systemu Nie przeszkadzać.
Poniżej omówimy różnice, jakie ta zmiana wprowadza w dotychczasowych interfejsach API.
Centrum powiadomień
Jedną z zalet tej zmiany jest to, że powiadomienia będą wyświetlane w centrum powiadomień macOS.
![Powiadomienia z Google Chrome będą wyświetlane w centrum powiadomień macOS](https://developer.chrome.google.cn/static/blog/native-mac-os-notifications/image/google-chrome-notificatio-0dd272728498d.png?authuser=0&hl=pl)
Różnice
Rozmiar i położenie ikony
Zmieni się wygląd ikon. Będą one mniejsze, a ich wypełnienie będzie stosowane. Aby uzyskać lepszy efekt wizualny, możesz użyć ikony z przezroczystym tłem zamiast ikony w jednolitym kolorze.
![Ikony powiadomień wyświetlane przez Chrome na Macu przed i po zmianie (Chrome vs. macOS).](https://developer.chrome.google.cn/static/blog/native-mac-os-notifications/image/before-after-chrome-ma-8f7a9faf4b135.png?authuser=0&hl=pl)
Ikony czynności
Przed tą zmianą w powiadomieniu wyświetlały się przyciski i ikony akcji. W przypadku powiadomień natywnych ikony przycisków akcji nie będą używane. Aby wyświetlić dostępne działania, użytkownik będzie musiał najechać kursorem na powiadomienie i wybrać przycisk „Więcej”.
![Przyciski akcji w powiadomieniu z ikonami wyświetlane przez Chrome (po lewej) i system macOS (po prawej).](https://developer.chrome.google.cn/static/blog/native-mac-os-notifications/image/before-after-notificati-acefa2d32d351.png?authuser=0&hl=pl)
Logo Chrome
Logo Chrome będzie zawsze wyświetlane i nie można go zastąpić ani zmienić. Jest to wymagane w przypadku aplikacji innych firm na komputerach Mac.
Obrazy
Opcja image
nie będzie już obsługiwana w systemie macOS. Jeśli zdefiniujesz właściwość image, powiadomienie nadal będzie się wyświetlać, ale zignoruje parametr image (patrz przykład poniżej).
![Obraz powiadomienia w Chrome na komputerze Mac – przed i po](https://developer.chrome.google.cn/static/blog/native-mac-os-notifications/image/before-after-notificati-35cb1f20a7481.png?authuser=0&hl=pl)
Obsługę wykrywania obrazów możesz włączyć za pomocą tego kodu:
if ('image' in Notification.prototype) {
// Image is supported.
} else {
// Image is NOT supported.
}
Zmiany w rozszerzeniach do Chrome
Rozszerzenia Chrome mają koncepcję szablonów powiadomień, które będą działać inaczej po wprowadzeniu tej zmiany.
Szablon powiadomienia o obrazie nie będzie już zawierał obrazu. Upewnij się, że obrazy są dodatkowymi elementami, a nie wymagane, aby być przydatne dla użytkowników.
![Przykłady „przed i po” dla szablonów obrazów w interfejsie chrome.notification API.](https://developer.chrome.google.cn/static/blog/native-mac-os-notifications/image/before-after-image-temp-ea8d68fe9acc.png?authuser=0&hl=pl)
Szablon powiadomienia o liście będzie zawierać tylko pierwszy element na liście. Rozważ powrót do podstawowego stylu powiadomienia i użycie tekstu w treści powiadomienia, aby podsumować zmiany.
![Przed i po: szablony list w interfejsie API chrome.notification.](https://developer.chrome.google.cn/static/blog/native-mac-os-notifications/image/before-after-list-templ-58a8124f4c8f9.png?authuser=0&hl=pl)
Powiadomienia o postępach będą zawierać wartość procentową w tytule powiadomienia, aby wskazywać postępy zamiast paska postępu.
![Przed i po w przypadku szablonów postępu w interfejsie chrome.notification API.](https://developer.chrome.google.cn/static/blog/native-mac-os-notifications/image/before-after-progress-t-aeb9eb61ae795.png?authuser=0&hl=pl)
Ostatnia różnica w interfejsie powiadomień polega na tym, że w systemie macOS nie będzie już używany element appIconMarkUrl
.
![Przed i po: appIconMarkUrl w interfejsie chrome.notification API.](https://developer.chrome.google.cn/static/blog/native-mac-os-notifications/image/before-after-appiconmar-74e3f48314cd4.png?authuser=0&hl=pl)