承蒙 K.Top 站長大大厚愛不吝賜教,這考題小弟雖然有想過,但是一直沒空去研究,老闆不是都說,先求有再求好,所以想說 GCM 都玩出來了,那就先去玩別的吧,GCM 圖示暫時就先用系統的黑白圖示,有總比沒有好,沒想到站長大大精益求精,於是花了點時間認真研究

說實在的,這部分除了 java 的資料可以參考,應該沒有 delphi 國內外的同好有提供相關資料可以參考(至少筆者粉用力找也找不到),於是只好摸著石頭過河嚕...

先看一下成果

    

圖示改由 Angry Birds 來通知您...

要怎麼做呢?原理大家應該都知道,就是需要使用到 resource,問題出在如何跟程式的部分做結合呢?

首先我們還是先把相關的 resource 圖檔加入到專案中

請注意 Local Name 跟 Remote Name 是不一樣的,筆者有重新命名過,原因是 android resource 只能用小寫的檔案名稱

接下來就是 java code 的部分

宣告兩個 Integer 型態的變數,分別去讀取不同的 resource,然後在 Notification.Builder 的部分指定使用這兩個 resource id

但是因為 Notification.Builder 指定 LargeIcon 時需要使用 Bitmap 格式,因此還需要透過下述函式先將圖檔轉換成 Bitmap 格式

重新編譯 classes.dex、編譯專案、發佈...比賽結束

 

附帶一提...筆者已經全面改用 XE6,所以之後的說明都會以 XE6 為主...

 

to be continued..

arrow
arrow

    縹緲 發表在 痞客邦 留言(3) 人氣()