Android 通知栏开发详解
一、通知栏基础概念
1. 通知栏核心组件
组件 | 作用 | 示例 |
---|---|---|
NotificationChannel | 通知分类渠道 | 消息、营销、系统通知 |
NotificationCompat.Builder | 通知构建器 | 设置图标、标题、内容 |
PendingIntent | 点击行为控制 | 跳转Activity、启动Service |
2. 通知优先级变迁
- Android 7.1及以下:
PRIORITY_HIGH
等优先级常量 - Android 8.0+:通过
NotificationChannel
设置重要性级别
二、创建基础通知
1. 必须步骤代码
|
|
2. 通知属性详解
|
|
三、高级通知功能
1. 进度条通知
|
|
2. 操作按钮
|
|
3. 直接回复通知
|
|
四、通知样式扩展
1. 大图样式
|
|
2. 收件箱样式
|
|
3. 媒体控制通知
|
|
五、最佳实践
1. 兼容性处理方案
|
|
2. 通知分组
|
|
3. 前台服务通知
|
|
六、常见问题解决
1. 通知不显示
- 检查渠道是否创建(Android 8.0+)
- 验证通知权限是否开启
- 确保设置了
smallIcon
- 华为/小米等厂商需要加入自启动白名单
2. 点击无响应
|
|
3. 通知栏图标显示为白色
- 使用纯Alpha通道图标
- 图标背景应为透明
- 推荐尺寸24x24dp(mdpi基准)