これは古い質問ですが、UrbanAirshipは頻繁に更新されるため、このページにアクセスする可能性のある他のユーザーを支援することにしました。バージョン6.0.1の時点では、これBasicNotificationBuilder
以上ありません。アイコンや色などで通知をカスタマイズするには、クラスを拡張し、メソッドNotifcationFactory
をオーバーライドする必要があります。createNotification
以下の例に示すように:
public class MyNotificationFactory extends NotificationFactory {
public MyNotificationFactory(Context context){
super(context);
}
@Override
public Notification createNotification(PushMessage pushMessage, int i) {
NotificationCompat.Builder builder = new NotificationCompat.Builder(getContext())
.setContentTitle(getContext().getResources().getString(R.string.app_name))
.setContentText(pushMessage.getAlert())
.setSmallIcon(R.drawable.your_icon_here)
.setColor(getContext().getResources().getColor(R.color.your_color_here))
.setAutoCancel(true);
return builder.build();
}
@Override
public int getNextId(PushMessage pushMessage) {
return NotificationIDGenerator.nextID();
}
}
最後に、これをアプリケーションクラスまたはUAを初期化した場所でUrbanAirshipの新しい通知ファクトリとして設定する必要があります。
UAirship.shared().getPushManager().setNotificationFactory(new MyNotificationFactory(getApplicationContext()));