2012-10-16 202 views
1

我正在開發Android應用程序,爲此我想使用通知。現在,我注意到Notification和setLatestEventInfo都被棄用,將不再支持API級別16以上(是否正確?)。Android中的通知構建檢查

我希望我的應用程序能夠從API級別11(Android 3.0)中得到支持。那麼我只需要實現新的方法NotificationCompat.Builder?這會在16級以前的API中工作嗎?或者是否必須使用if語句,檢查用戶設備的API級別,然後在API級別11和16之間使用Notification和setLatestEventInfo,並使用API​​級別16級別的NotificationCompat.Builder?

編輯:

一兩件事。我使用的代碼從用於developer.android.com和NotificationCompat.Builder它給在TaskStackBuilder以下錯誤:

類需要API級16(電流min爲11):android.app.TaskStackBuilder

這如果我使用if語句來檢查API級別,則不會解決問題。

+0

嘗試閱讀此答案:http://stackoverflow.com/a/6392101/1056359 – thepoosh

+0

是的,我也找到了這個答案,但我感到困惑,因爲他說:** Notification.Builder是在API 11中,所以如果你正在開發任何早於3.0版本的應用程序,你應該繼續使用舊的API **並且:** NotificationCompat.Builder類已經添加到支持包中,因此我們可以使用它來支持API級別v4及更高版本。這是否意味着我可以使用Notification.Builder,而不是NotificationCompat.Builder?或者這是否意味着我應該使用11和16之間的Notification.Builder API,以及16和更高版本的NotificationCompat.Builder? – Zero

回答

3

如果您希望它在早期API中使用Notification.Builder,則應使用SDK中包含的支持庫。

當爲API 11之前的版本編寫代碼時,應該包含支持庫,而不是調用Notification.Builder,而需要調用NotificationCompact

嘗試閱讀Android support Library page,並通過示例項目瞭解這些內容。