我的项目有minSdkVersion 15
,但我需要使用AlarmManager.setExact()
功能,这需要minSdkVersion 19
。
我的问题是:从15岁变为19岁会有什么后果?
我是否会放弃可能的应用用户?
如果是,那么多少?
有没有解决办法?
答案 0 :(得分:0)
是:不切换(您不想让您的专业客户失去信心)。
只需检查操作系统版本是否<19,然后使用set()
否则,请使用setExact()
。就是这样。
您需要使用setExact()
的原因是
来自reference docs 的注意:从API 19(KITKAT)开始,警报传递不准确:操作系统将移动警报以最小化唤醒和电池使用。
有新的API支持需要严格交付保证的应用程序;请参阅setWindow(int,long,long,PendingIntent)和setExact(int,long,PendingIntent)。
targetSdkVersion早于API 19的应用程序将继续查看之前在请求时准确传递所有警报的行为。