Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a3f92d39 authored by Grace Jia's avatar Grace Jia
Browse files

Fix misleading phrasing of notification message for crashed phone apps

and show phone app name in notification.

Test: manually with TelecomTestApp
Bug: 148765793
Change-Id: Iea6bd17fd3d00f4163ebc78e2ba166a7ecde03ff
parent aaabe1e0
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -73,8 +73,8 @@
    <string name="notification_crashedInCallService_title">Crashed phone app</string>
    <!-- Body of the notification presented when an in call service crashed. [CHAR LIMIT=NONE] -->
    <string name="notification_crashedInCallService_body">
        Your Phone app <xliff:g id="in_call_service_app_name">%s</xliff:g> has crashed.
        You call was continued using the Phone app that came with your device.
        Your phone app <xliff:g id="in_call_service_app_name">%s</xliff:g> has crashed.
        You call was continued using the phone app that came with your device.
    </string>

    <!-- Content description of the call muted notification icon for
+13 −1
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.pm.ServiceInfo;
@@ -1804,6 +1805,17 @@ public class InCallController extends CallsManagerListenerBase {
    }

    private void sendCrashedInCallServiceNotification(String packageName) {
        PackageManager packageManager = mContext.getPackageManager();
        CharSequence appName;
        try {
            appName = packageManager.getApplicationLabel(
                    packageManager.getApplicationInfo(packageName, 0));
            if (TextUtils.isEmpty(appName)) {
                appName = packageName;
            }
        } catch (PackageManager.NameNotFoundException e) {
            appName = packageName;
        }
        NotificationManager notificationManager = (NotificationManager) mContext
                .getSystemService(Context.NOTIFICATION_SERVICE);
        Notification.Builder builder = new Notification.Builder(mContext,
@@ -1816,7 +1828,7 @@ public class InCallController extends CallsManagerListenerBase {
                .setStyle(new Notification.BigTextStyle()
                        .bigText(mContext.getString(
                                R.string.notification_crashedInCallService_body,
                                packageName)));
                                appName)));
        notificationManager.notify(NOTIFICATION_TAG, IN_CALL_SERVICE_NOTIFICATION_ID,
                builder.build());
    }