I found another way by modifying C2DMReceiver.java as a documented user view for the notification bar.

protected void sendnotification (String title, String message) { String ns = Context.NOTIFICATION_SERVICE; NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns); int icon = R.drawable.icon100; RemoteViews contentView = new RemoteViews(getPackageName(), R.layout.custom_notification_layout); contentView.setImageViewResource(R.id.image, R.drawable.icon100); contentView.setTextViewText(R.id.text, message); CharSequence tickerText = message; long when = System.currentTimeMillis(); Notification notification = new Notification(icon, tickerText, when); notification.contentView = contentView; Intent notificationIntent = new Intent(this, Startup.class); PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0); notification.flags = Notification.FLAG_AUTO_CANCEL; notification.contentIntent = contentIntent; Random randInt = new Random(); int id = randInt.nextInt(100) - 1; mNotificationManager.notify(id, notification); }
and create a custom_notification_layout.xml layout like this
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="3dp" > <ImageView android:id="@+id/image" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="10dp" /> <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="fill_parent" android:textColor="#000" /> </LinearLayout>
Hope this helps.
Link: Android SDK Doc
source share