stk app supports notification channel
Bug: 37475310
Test: Manual Test
Change-Id: I1045e5c4ac55e1b6667955857d614acee460bf81
diff --git a/src/com/android/stk/StkAppService.java b/src/com/android/stk/StkAppService.java
index 91ae3d3..1c1b33a 100755
--- a/src/com/android/stk/StkAppService.java
+++ b/src/com/android/stk/StkAppService.java
@@ -20,18 +20,14 @@
import android.app.ActivityManager.RunningTaskInfo;
import android.app.AlertDialog;
import android.app.Notification;
+import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.Service;
import android.app.Activity;
-import android.app.ActivityManager;
-import android.app.ActivityManager.RecentTaskInfo;
-import android.app.ActivityManager.RunningAppProcessInfo;
-import android.content.ComponentName;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
-import android.content.res.Configuration;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
@@ -50,22 +46,16 @@
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
-import android.view.Window;
import android.view.WindowManager;
import android.widget.ImageView;
-import android.widget.RemoteViews;
import android.widget.TextView;
import android.widget.Toast;
-import android.content.BroadcastReceiver;
import android.content.IntentFilter;
-import android.content.pm.ApplicationInfo;
-import android.content.pm.PackageManager.NameNotFoundException;
import com.android.internal.telephony.cat.AppInterface;
import com.android.internal.telephony.cat.LaunchBrowserMode;
import com.android.internal.telephony.cat.Menu;
import com.android.internal.telephony.cat.Item;
-import com.android.internal.telephony.cat.Input;
import com.android.internal.telephony.cat.ResultCode;
import com.android.internal.telephony.cat.CatCmdMessage;
import com.android.internal.telephony.cat.CatCmdMessage.BrowserSettings;
@@ -74,11 +64,7 @@
import com.android.internal.telephony.cat.CatResponseMessage;
import com.android.internal.telephony.cat.TextMessage;
import com.android.internal.telephony.uicc.IccRefreshResponse;
-import com.android.internal.telephony.uicc.IccCardStatus.CardState;
import com.android.internal.telephony.PhoneConstants;
-import com.android.internal.telephony.TelephonyIntents;
-import com.android.internal.telephony.IccCardConstants;
-import com.android.internal.telephony.uicc.UiccController;
import com.android.internal.telephony.GsmAlphabet;
import com.android.internal.telephony.cat.CatService;
@@ -238,6 +224,9 @@
private static final String STK_DIALOG_ACTIVITY_NAME = PACKAGE_NAME + ".StkDialogActivity";
// Notification id used to display Idle Mode text in NotificationManager.
private static final int STK_NOTIFICATION_ID = 333;
+ // Notification channel containing all mobile service messages notifications.
+ private static final String STK_NOTIFICATION_CHANNEL_ID = "mobileServiceMessages";
+
private static final String LOG_TAG = new Object(){}.getClass().getEnclosingClass().getName();
// Inner class used for queuing telephony messages (proactive commands,
@@ -1583,9 +1572,17 @@
CatLog.d(LOG_TAG, "Add IdleMode text");
PendingIntent pendingIntent = PendingIntent.getService(mContext, 0,
new Intent(mContext, StkAppService.class), 0);
+ /* Creates the notification channel and registers it with NotificationManager.
+ * If a channel with the same ID is already registered, NotificationManager will
+ * ignore this call.
+ */
+ mNotificationManager.createNotificationChannel(new NotificationChannel(
+ STK_NOTIFICATION_CHANNEL_ID,
+ getResources().getString(R.string.stk_channel_name),
+ NotificationManager.IMPORTANCE_MIN));
final Notification.Builder notificationBuilder = new Notification.Builder(
- StkAppService.this);
+ StkAppService.this, STK_NOTIFICATION_CHANNEL_ID);
if (mStkContext[slotId].mMainCmd != null &&
mStkContext[slotId].mMainCmd.getMenu() != null) {
notificationBuilder.setContentTitle(mStkContext[slotId].mMainCmd.getMenu().title);