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

View File

@ -14,31 +14,26 @@ import android.os.Vibrator;
* @see NotificationBuilderApi11
*/
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
* A {@link Context} instance.
*
* @return Appropriate {@link NotificationBuilder} instance for this device.
*/
public static NotificationBuilder getInstance(Context context) {
public static NotificationBuilder createInstance(Context context) {
Context appContext = context.getApplicationContext();
if (sInstance == null) {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) {
sInstance = new NotificationBuilderApi1(appContext);
} else {
sInstance = new NotificationBuilderApi11(appContext);
}
NotificationBuilder instance;
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) {
instance = new NotificationBuilderApi1(appContext);
} else {
instance = new NotificationBuilderApi11(appContext);
}
return sInstance;
return instance;
}