公司要实现未读消息数桌面角标提醒功能。
在Google.Android.Developer网站上官方没有提供该API,目前只好使用各厂家的ROM提供的SDK来实现。
如何在app中建立一个接口层,方便各厂家的SDK接入和移除。
下面是原理图:
抽象类:BadgeNotifManager.java //功能框架
抽象类实现子类:
BadgeNotifHuaweiManager.java //华为功能调用
BadgeNotifXiaomiManager.java //小米功能调用
实现方接口:IBadgeProvider.java //功能实现接口
实现方实现类:
BadgeHuaweiProvider.java //华为功能实现
BadgeXiaomiProvider.java //小米功能实现
功能框架代码
华为,小米功能调用
接口代码
接口实现
该接口层使得app与sdk层调用分离,通过manager进行调用,不同厂家通过在各厂家的manager实例,调用sendNotification()即可。