FLUTTER ECOSYSTEM

windows7lake/app_badge_plus

一個用於在應用程式圖示上新增徽章的 Flutter 插件。

app_badge_plus 專案封面
Stars
34
Forks
24
最近推送(UTC)
2026年9月7日
專案狀態
未封存
windows7lake GitHub avatar
GITHUB User

windows7lake ↗

語言KotlinDartSwiftRubyObjective-C

此儲存庫發佈的套件

使用的依賴

依賴清單 4 項
  • flutter{"sdk":"flutter"}
  • plugin_platform_interface^2.1.8
  • flutter_test開發依賴{"sdk":"flutter"}
  • flutter_lints開發依賴^5.0.0

原始 README

以下為英文專案原文快照,最新內容請造訪 GitHub。

展開 / 收合專案 README

app_badge_plus

Pub Version Pub Points GitHub

A Flutter plugin for adding badges to your app icon. Supports iOS, Android, and macOS.

iOS pixel samsung macOS

Supported Platforms

  • iOS
  • Android
    • Samsung (pass)
    • Oppo (pass)
    • Vivo (pass)
    • Huawei (pass)
    • Xiaomi / POCO (HyperOS)
    • LG
    • Sony
    • HTC
    • ZTX
  • macOS

Mark

Android

Starting with Android 8.0 (API level 26), notification badges—also known as notification dots—appear on a launcher icon when the associated app has an active notification. Users can touch & hold the app icon to reveal the notifications, along with any app shortcuts.

https://developer.android.com/develop/ui/views/notifications/badges

Starting With Android13 (API level 33), notification runtime permission should be requested before setting the app badge.

On POCO / Xiaomi HyperOS, numeric badges are driven by active notifications (the old extraNotification API is unavailable). Grant notification permission and enable the numeric badge style in system settings.

Add the following permissions to AndroidManifest.xml according to the system you need to support:

<!-- Samsung -->
<uses-permission android:name="com.sec.android.provider.badge.permission.READ"/>
<uses-permission android:name="com.sec.android.provider.badge.permission.WRITE"/>

<!-- HTC -->
<uses-permission android:name="com.htc.launcher.permission.READ_SETTINGS"/>
<uses-permission android:name="com.htc.launcher.permission.UPDATE_SHORTCUT"/>

<!-- Sony -->
<uses-permission android:name="com.sonyericsson.home.permission.BROADCAST_BADGE"/>
<uses-permission android:name="com.sonymobile.home.permission.PROVIDER_INSERT_BADGE"/>

<!-- Apex -->
<uses-permission android:name="com.anddoes.launcher.permission.UPDATE_COUNT"/>

<!-- Solid -->
<uses-permission android:name="com.majeur.launcher.permission.UPDATE_BADGE"/>

<!-- Huawei -->
<uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE" />
<uses-permission android:name="com.huawei.android.launcher.permission.READ_SETTINGS" />
<uses-permission android:name="com.huawei.android.launcher.permission.WRITE_SETTINGS" />
iOS

On iOS, when using with notification message, notification permission is required.

macOS

On macOS, when using with notification message, notification permission is required.

permission_handler

Using permission_handler package to manage permission on Android and iOS.

https://pub.dev/packages/permission_handler

Usage

To use this plugin, add app_badge_plus as a dependency in your pubspec.yaml file.

dependencies:
  app_badge_plus: ^1.1.2

Example

import 'package:app_badge_plus/app_badge_plus.dart';

// Set badge
AppBadgePlus.updateBadge(5);

// Remove badge
AppBadgePlus.updateBadge(0);

// Whether the launcher supports badges. It always returns true on iOS and it will return false on Android if the launcher doesn't support badges.
AppBadgePlus.isSupported();

Compare

flutter_app_badger

https://pub.dev/packages/flutter_app_badger

Set badge
FlutterAppBadger.updateBadgeCount(1);

replace to

AppBadgePlus.updateBadge(1);
Remove badge
FlutterAppBadger.removeBadge();

replace to

AppBadgePlus.updateBadge(0);
Device support
FlutterAppBadger.isAppBadgeSupported();

using dart API:

import 'dart:io';

Platform.isAndroid || Platform.isIOS