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

Commit 76f50976 authored by kholoud mohamed's avatar kholoud mohamed Committed by Cherrypicker Worker
Browse files

RESTRICT AUTOMERGE Refactor device policy resource APIs to a separate class

Also moved Dialer constant definitions from DPM to Dialer

Bug: 217388602
Bug: 218875965
Test: atest EnterpriseResourcesTests
Test: manual
Change-Id: Id047eab50366273d99580d53433e25742e1f8516
(cherry picked from commit 187477b9)
Merged-In: Id047eab50366273d99580d53433e25742e1f8516
parent 9a146b85
Loading
Loading
Loading
Loading
+54 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2022 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.dialer.app;

import android.app.admin.DevicePolicyManager;

/**
 * Class containing the required identifiers to update device management resources.
 *
 * <p>See {@link DevicePolicyManager#getDrawable} and {@link DevicePolicyManager#getString}.
 */
public class DevicePolicyResources {

    private static final String PREFIX = "Dialer.";

    /**
     * The title of the in-call notification for an incoming work call.
     */
    public static final String NOTIFICATION_INCOMING_WORK_CALL_TITLE =
            PREFIX + "NOTIFICATION_INCOMING_WORK_CALL_TITLE";

    /**
     * The title of the in-call notification for an ongoing work call.
     */
    public static final String NOTIFICATION_ONGOING_WORK_CALL_TITLE =
            PREFIX + "NOTIFICATION_ONGOING_WORK_CALL_TITLE";

    /**
     * Missed call notification label, used when there's exactly one missed call from work
     * contact.
     */
    public static final String NOTIFICATION_MISSED_WORK_CALL_TITLE =
            PREFIX + "NOTIFICATION_MISSED_WORK_CALL_TITLE";

    /**
     * Label for notification indicating that call is being made over wifi.
     */
    public static final String NOTIFICATION_WIFI_WORK_CALL_LABEL =
            PREFIX + "NOTIFICATION_WIFI_WORK_CALL_LABEL";
}
+2 −2
Original line number Diff line number Diff line
@@ -15,7 +15,7 @@
 */
package com.android.dialer.app.calllog;

import static android.app.admin.DevicePolicyResources.Strings.Dialer.NOTIFICATION_MISSED_WORK_CALL_TITLE;
import static com.android.dialer.app.DevicePolicyResources.NOTIFICATION_MISSED_WORK_CALL_TITLE;

import android.app.Notification;
import android.app.Notification.Builder;
@@ -172,7 +172,7 @@ public class MissedCallNotifier implements Worker<Pair<Integer, String>, Void> {
          callLogNotificationsQueryHelper.getContactInfo(
              call.number, call.numberPresentation, call.countryIso);
      if (contactInfo.userType == ContactsUtils.USER_TYPE_WORK) {
        titleText = context.getSystemService(DevicePolicyManager.class).getString(
        titleText = context.getSystemService(DevicePolicyManager.class).getResources().getString(
                NOTIFICATION_MISSED_WORK_CALL_TITLE,
                () -> context.getString(R.string.notification_missedWorkCallTitle));
      } else {
+6 −6
Original line number Diff line number Diff line
@@ -16,11 +16,11 @@

package com.android.incallui;

import static android.app.admin.DevicePolicyResources.Strings.Dialer.NOTIFICATION_INCOMING_WORK_CALL_TITLE;
import static android.app.admin.DevicePolicyResources.Strings.Dialer.NOTIFICATION_ONGOING_WORK_CALL_TITLE;
import static android.app.admin.DevicePolicyResources.Strings.Dialer.NOTIFICATION_WIFI_WORK_CALL_LABEL;
import static android.telecom.Call.Details.PROPERTY_HIGH_DEF_AUDIO;
import static com.android.contacts.common.compat.CallCompat.Details.PROPERTY_ENTERPRISE_CALL;
import static com.android.dialer.app.DevicePolicyResources.NOTIFICATION_INCOMING_WORK_CALL_TITLE;
import static com.android.dialer.app.DevicePolicyResources.NOTIFICATION_ONGOING_WORK_CALL_TITLE;
import static com.android.dialer.app.DevicePolicyResources.NOTIFICATION_WIFI_WORK_CALL_LABEL;
import static com.android.incallui.NotificationBroadcastReceiver.ACTION_ACCEPT_VIDEO_UPGRADE_REQUEST;
import static com.android.incallui.NotificationBroadcastReceiver.ACTION_ANSWER_SPEAKEASY_CALL;
import static com.android.incallui.NotificationBroadcastReceiver.ACTION_ANSWER_VIDEO_INCOMING_CALL;
@@ -737,7 +737,7 @@ public class StatusBarNotifier
  private String getOngoingCallNotificationMessage(boolean isWorkCall) {
    if (isWorkCall) {
      DevicePolicyManager dpm = context.getSystemService(DevicePolicyManager.class);
      return dpm.getString(NOTIFICATION_ONGOING_WORK_CALL_TITLE, () ->
      return dpm.getResources().getString(NOTIFICATION_ONGOING_WORK_CALL_TITLE, () ->
              context.getString(R.string.notification_ongoing_work_call));
    } else {
      return context.getString(R.string.notification_ongoing_call);
@@ -747,7 +747,7 @@ public class StatusBarNotifier
  private String getIncomingCallNotificationMessage(boolean isWorkCall) {
    if (isWorkCall) {
      DevicePolicyManager dpm = context.getSystemService(DevicePolicyManager.class);
      return dpm.getString(NOTIFICATION_INCOMING_WORK_CALL_TITLE, () ->
      return dpm.getResources().getString(NOTIFICATION_INCOMING_WORK_CALL_TITLE, () ->
              context.getString(R.string.notification_incoming_work_call));
    } else {
      return context.getString(R.string.notification_incoming_call);
@@ -757,7 +757,7 @@ public class StatusBarNotifier
  private String getWifiBrand(boolean isWorkCall) {
    if (isWorkCall) {
      DevicePolicyManager dpm = context.getSystemService(DevicePolicyManager.class);
      return dpm.getString(NOTIFICATION_WIFI_WORK_CALL_LABEL, () ->
      return dpm.getResources().getString(NOTIFICATION_WIFI_WORK_CALL_LABEL, () ->
              context.getString(R.string.notification_call_wifi_work_brand));
    } else {
      return context.getString(R.string.notification_call_wifi_brand);