Fix channel screen launching
Test: launch channel screen from Settings & external app
Change-Id: Ib9add2f25cbacde192095407b83b17438946a493
Fixes: 73814186
diff --git a/src/com/android/settings/notification/NotificationSettingsBase.java b/src/com/android/settings/notification/NotificationSettingsBase.java
index a4310a1..c318d90 100644
--- a/src/com/android/settings/notification/NotificationSettingsBase.java
+++ b/src/com/android/settings/notification/NotificationSettingsBase.java
@@ -44,6 +44,7 @@
import android.widget.Toast;
import com.android.settings.R;
+import com.android.settings.SettingsActivity;
import com.android.settings.applications.AppInfoBase;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.dashboard.DashboardFragment;
@@ -143,9 +144,13 @@
return;
}
collectConfigActivities();
- Bundle args = getArguments();
- mChannel = (args != null && args.containsKey(Settings.EXTRA_CHANNEL_ID)) ?
- mBackend.getChannel(mPkg, mUid, args.getString(Settings.EXTRA_CHANNEL_ID)) : null;
+ Intent intent = getActivity().getIntent();
+ String channelId = intent != null ? intent.getStringExtra(Settings.EXTRA_CHANNEL_ID) : null;
+ if (channelId == null && intent != null) {
+ Bundle args = intent.getBundleExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT_ARGUMENTS);
+ channelId = args != null ? args.getString(Settings.EXTRA_CHANNEL_ID) : null;
+ }
+ mChannel = mBackend.getChannel(mPkg, mUid, channelId);
NotificationChannelGroup group = null;