1
0
mirror of https://github.com/moparisthebest/k-9 synced 2024-08-13 17:03:48 -04:00

Don't use the NotificationBuilder as singleton

This commit is contained in:
cketti 2012-05-08 06:42:34 +02:00
parent c59688bf2d
commit f25422f269
2 changed files with 12 additions and 17 deletions

View File

@ -3021,7 +3021,7 @@ public class MessagingController implements Runnable {
NotificationManager notifMgr = NotificationManager notifMgr =
(NotificationManager) mApplication.getSystemService(Context.NOTIFICATION_SERVICE); (NotificationManager) mApplication.getSystemService(Context.NOTIFICATION_SERVICE);
NotificationBuilder builder = NotificationBuilder.getInstance(mApplication); NotificationBuilder builder = NotificationBuilder.createInstance(mApplication);
builder.setSmallIcon(R.drawable.ic_menu_refresh); builder.setSmallIcon(R.drawable.ic_menu_refresh);
builder.setWhen(System.currentTimeMillis()); builder.setWhen(System.currentTimeMillis());
builder.setOngoing(true); builder.setOngoing(true);
@ -3068,7 +3068,7 @@ public class MessagingController implements Runnable {
NotificationManager notifMgr = NotificationManager notifMgr =
(NotificationManager) mApplication.getSystemService(Context.NOTIFICATION_SERVICE); (NotificationManager) mApplication.getSystemService(Context.NOTIFICATION_SERVICE);
NotificationBuilder builder = NotificationBuilder.getInstance(mApplication); NotificationBuilder builder = NotificationBuilder.createInstance(mApplication);
builder.setSmallIcon(R.drawable.stat_notify_email_generic); builder.setSmallIcon(R.drawable.stat_notify_email_generic);
builder.setWhen(System.currentTimeMillis()); builder.setWhen(System.currentTimeMillis());
builder.setAutoCancel(true); builder.setAutoCancel(true);
@ -3103,7 +3103,7 @@ public class MessagingController implements Runnable {
final NotificationManager notifMgr = final NotificationManager notifMgr =
(NotificationManager) mApplication.getSystemService(Context.NOTIFICATION_SERVICE); (NotificationManager) mApplication.getSystemService(Context.NOTIFICATION_SERVICE);
NotificationBuilder builder = NotificationBuilder.getInstance(mApplication); NotificationBuilder builder = NotificationBuilder.createInstance(mApplication);
builder.setSmallIcon(R.drawable.ic_menu_refresh); builder.setSmallIcon(R.drawable.ic_menu_refresh);
builder.setWhen(System.currentTimeMillis()); builder.setWhen(System.currentTimeMillis());
builder.setOngoing(true); builder.setOngoing(true);
@ -4186,7 +4186,7 @@ public class MessagingController implements Runnable {
NotificationManager notifMgr = NotificationManager notifMgr =
(NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
NotificationBuilder builder = NotificationBuilder.getInstance(context); NotificationBuilder builder = NotificationBuilder.createInstance(context);
builder.setSmallIcon(R.drawable.stat_notify_email_generic); builder.setSmallIcon(R.drawable.stat_notify_email_generic);
builder.setWhen(System.currentTimeMillis()); builder.setWhen(System.currentTimeMillis());
builder.setTicker(messageNotice); builder.setTicker(messageNotice);

View File

@ -14,31 +14,26 @@ import android.os.Vibrator;
* @see NotificationBuilderApi11 * @see NotificationBuilderApi11
*/ */
public abstract class NotificationBuilder { public abstract class NotificationBuilder {
/**
* Instance of the API-specific class that is used to create system notifications
*/
private static NotificationBuilder sInstance = null;
/** /**
* Get API-specific instance of the {@code NotificationBuilder} class * Create instance of an API-specific {@code NotificationBuilder} subclass.
* *
* @param context * @param context
* A {@link Context} instance. * A {@link Context} instance.
* *
* @return Appropriate {@link NotificationBuilder} instance for this device. * @return Appropriate {@link NotificationBuilder} instance for this device.
*/ */
public static NotificationBuilder getInstance(Context context) { public static NotificationBuilder createInstance(Context context) {
Context appContext = context.getApplicationContext(); Context appContext = context.getApplicationContext();
if (sInstance == null) { NotificationBuilder instance;
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) { if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) {
sInstance = new NotificationBuilderApi1(appContext); instance = new NotificationBuilderApi1(appContext);
} else { } else {
sInstance = new NotificationBuilderApi11(appContext); instance = new NotificationBuilderApi11(appContext);
}
} }
return sInstance; return instance;
} }