關於新版本的Notification的用法

2021-07-04 01:36:51 字數 2132 閱讀 4352



今天在做android 4.3下的前台服務方面的開發時,使用到了notification這個類。使用的過程中發現使用以前的一些例子中用的構造方法和setlatesteventinfo()方法時,eclipse卻出現了警告:「 不建議使用型別 notification 的notification(icon, tickertext, when)構造方法和 setlatesteventinfo(context, charsequence, charsequence, pendingintent)方法」!

經過一番查詢,總結一下notification在各個版本中的用法:

1.低於api level 11版本,也就是android 2.3.3以下的系統中,setlatesteventinfo()函式是唯一的實現方法。

notificationmanager manager = (notificationmanager) getsystemservice(notification_service);

notification notification = new notification(

r.drawable.ic_launcher, "this is ticker text",

system.currenttimemillis());

intent intent = new intent(this, notificationactivity.class);

pendingintent pi = pendingintent.getactivity(this, 0, intent,

pendingintent.flag_cancel_current);

notification.setlatesteventinfo(this, "this is content title",

"this is content text", pi);

manager.notify(1, notification);

2. 高於api level 11,低於api level 16 版本中,可使用notification.builder來建構函式。但要使用getnotification()來使notification實現。此時,前面版本在notification中設定的flags,icon等屬性要在builder裡面設定。

notification.builder builder = new notification.builder(context)  

.setautocancel(true)

.setcontenttitle("title")

.setcontenttext("describe")

.setcontentintent(pendingintent)

.setsmallicon(r.drawable.ic_launcher)

.setwhen(system.currenttimemillis())

.setongoing(true);

notification=builder.getnotification();

3.高於api level 16的版本,就可以用builder和build()函式來配套的方便使用notification了。

notification notification = new notification.builder(context)    

.setautocancel(true)

.setcontenttitle("title")

.setcontenttext("describe")

.setcontentintent(pendingintent)

.setsmallicon(r.drawable.ic_launcher)

.setwhen(system.currenttimemillis())

.build();

注意:高版本中對應的方法不能在低版本中使用,否則會報類似的版本錯誤:

相應的解決辦法是: 如果把manifest檔案中的user-sdk的android:minsdkversion改為報錯的那個高版本就沒事。比如下面:

iOS檢查App新版本並更新新版本

檢查新版本 更新 第一種方法 檢查新版本 更新 dispatch async dispatch get global queue dispatch queue priority default,0 檢查新版本更新 void showalert void alertview uialertview a...

CowNewSQL發布新版本

cownewsql發布新版本了,這個版本的推出標誌著cownewsql能正式應用於開發實際了。本版更新列表 1 增加了對create table drop table create index和dropindex的支援。2 修改了n多bug,使用從各方收集到的近百條各種複雜的sql語句全面測試通過!...

勇於嘗試新版本

經常能夠在網上看見這樣的問題 我是使用bootstrap 3 還是bootstrap 4 以前的我也是認為老的版本比較穩定。但是自從前一段時間,看見了一種觀點 技術是不斷往前發展的,如果一直使用老版本,那麼就很難有進步。我認為這種觀點很對,新的版本修復了或者說改變了很多以前的問題。而且舊版本的東西很...