0

有可能做这样的事情吗?:

not = AndroidCheck.isJellyBeanOrLater() ? notB.build() 
                        : notB.getNotification();

这会导致错误,.build()因为它是 JellyBean(API16) 和更高版本的方法,并且 .getNotification() 是 JellyBean 方法的早期版本。

API MinVersion=10 Version=17

目标是:Android 版本对 JellyBean 来说是早期的,它使用.getNotification()不推荐使用的方法,如果不是,它使用实际的.build()方法。

你能帮帮我吗?=)

谢谢

4

2 回答 2

1

您可以使用支持库中的NotificationCompat.Build创建适用于所有平台级别的通知。

于 2013-06-21T02:13:12.223 回答
0

您必须将对 .build() 的调用放在单独的类中。一旦 Android 在旧的 Android 版本手机上调用新 API 加载类 -> 你会得到一个 RuntimeError。

看一下这个:

http://code.google.com/p/android-change-log/source/browse/trunk/src/sheetrock/panda/changelog/ChangeLog.java?spec=svn52&r=5​​2

请参见第 39-41、144-145 行(这里是对较新 API 的调用)、324-341

于 2013-06-21T02:52:21.277 回答