导航菜单

页面标题

页面副标题

Petal Maps v4.7.0.310001 - NavNotificationService.java 源代码

正在查看: Petal Maps v4.7.0.310001 应用的 NavNotificationService.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.huawei.maps.app.navigation.service;

import android.app.NotificationManager;
import android.content.Context;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Binder;
import android.os.IBinder;
import android.text.TextUtils;
import androidx.annotation.Nullable;
import com.huawei.hms.navi.navibase.model.NaviInfo;
import com.huawei.maps.app.R;
import com.huawei.maps.app.setting.bean.ContributionRequestCodes;
import com.huawei.maps.app.setting.constant.RoadReportType;
import com.huawei.maps.businessbase.model.NaviCurRecord;
import com.huawei.maps.businessbase.model.TurnRoadDirType;
import com.huawei.maps.businessbase.model.navirecords.RecordSiteInfo;
import com.huawei.maps.navi.service.model.NotificationOngoingData;
import com.huawei.maps.poi.utils.c;
import com.huawei.secure.android.common.activity.SafeService;
import defpackage.rp5;
import java.util.List;
import java.util.Locale;

public class NavNotificationService extends SafeService {
    public static final String c = "NavNotificationService";
    public boolean b = false;

    public class a extends Binder {
        public a() {
        }

        public final void a(NotificationOngoingData notificationOngoingData, int i) {
            ar5.c().f().notify(ContributionRequestCodes.REQUEST_ADD_NEW_PLACE_CODE, ar5.c().b(ar5.c().e(i, notificationOngoingData)));
        }

        public void b() {
            if (NavNotificationService.this.b) {
                NotificationOngoingData notificationOngoingData = new NotificationOngoingData();
                notificationOngoingData.setTemplateContent(o41.c().getResources().getString(R.string.navi_destination));
                notificationOngoingData.setSecondlyColor(-16777216);
                a(notificationOngoingData, k06.j("nav_guide_", "circle_logo"));
            }
        }

        public void c(boolean z) {
            NavNotificationService.this.b = z;
        }

        public void d(NaviInfo naviInfo) {
            int i;
            if (NavNotificationService.this.b) {
                String[] strArr = new String[2];
                String g = NavNotificationService.this.g(naviInfo);
                if (k06.w() && k06.q(naviInfo.getIconId()) && NavNotificationService.this.h(naviInfo) > 30.0d) {
                    i = k06.j("nav_guide_", "straight");
                    strArr[0] = o41.c().getResources().getString(R.string.navi_continue_straight);
                } else {
                    int j = k06.j("nav_guide_", naviInfo.getIconId());
                    strArr = NavNotificationService.this.f(naviInfo);
                    i = j;
                }
                String str = strArr[0];
                if (!TextUtils.isEmpty(strArr[1])) {
                    str = strArr[0] + "\n" + strArr[1];
                }
                NotificationOngoingData notificationOngoingData = new NotificationOngoingData();
                notificationOngoingData.setTemplateContent(g + "\n" + str);
                notificationOngoingData.setSecondlyColor(-7829368);
                a(notificationOngoingData, i);
            }
        }

        public void e(String str) {
            if (NavNotificationService.this.b) {
                NotificationOngoingData notificationOngoingData = new NotificationOngoingData();
                notificationOngoingData.setTemplateContent(str);
                notificationOngoingData.setSecondlyColor(-16777216);
                a(notificationOngoingData, k06.j("nav_guide_", "loading"));
            }
        }

        public void f() {
            if (NavNotificationService.this.b) {
                NotificationOngoingData notificationOngoingData = new NotificationOngoingData();
                notificationOngoingData.setTemplateContent(o41.c().getResources().getString(R.string.navi_fold_route_failed));
                notificationOngoingData.setSecondlyColor(-16777216);
                a(notificationOngoingData, k06.j("nav_guide_", "circle_logo"));
            }
        }
    }

    public final String[] f(NaviInfo naviInfo) {
        String[] strArr = new String[2];
        StringBuilder l = l(naviInfo);
        String k = k(naviInfo);
        if (l == null || l.length() <= 0 || TextUtils.isEmpty(k) || " ".equals(k)) {
            if (l != null) {
                strArr[0] = l.toString();
            } else {
                strArr[0] = k;
            }
        } else if (l.substring(l.length() - 1).equals(",")) {
            l.append(k);
            strArr[0] = l.toString();
        } else {
            l.append(",");
            l.append(k);
            strArr[0] = l.toString();
        }
        String j = j(naviInfo, k);
        strArr[1] = j;
        if (strArr[0].equals(j)) {
            strArr[1] = RoadReportType.CAMERA_INCORRECT;
        }
        return strArr;
    }

    public final String g(NaviInfo naviInfo) {
        return String.format(Locale.ENGLISH, o41.c().getResources().getQuantityString(ip1.y(naviInfo.getConvertedCurStepRetainDist().getUnit()), (int) naviInfo.getConvertedCurStepRetainDist().getValue()).trim(), ip1.u(naviInfo.getConvertedCurStepRetainDist().getUnit()).format(naviInfo.getConvertedCurStepRetainDist().getValue()));
    }

    public final double h(NaviInfo naviInfo) {
        return ip1.A(String.valueOf(naviInfo.getConvertedCurStepRetainDist().getValue()), naviInfo.getConvertedCurStepRetainDist().getUnit());
    }

    public final String i(NaviInfo naviInfo) {
        return rp5.A(naviInfo) ? k06.l(naviInfo.getCurrentRoadNames()) : k06.l(naviInfo.getCurShowRoadNames());
    }

    public final String j(NaviInfo naviInfo, String str) {
        if (k06.u(naviInfo) || tha.a(str) || k06.t(naviInfo.getDirTexts())) {
            return RoadReportType.CAMERA_INCORRECT;
        }
        return String.format(Locale.ENGLISH, o41.c().getString(o41.b().getResources().getIdentifier("navi_towards", "string", o41.b().getPackageName())), rp5.d(naviInfo.getDirTexts()));
    }

    public final String k(NaviInfo naviInfo) {
        if (k06.q(naviInfo.getIconId())) {
            return k06.o();
        }
        if (rp5.A(naviInfo)) {
            return String.format(Locale.ENGLISH, o41.c().getString(o41.b().getResources().getIdentifier(TurnRoadDirType.GRD_STAY_ON.getType(), "string", o41.b().getPackageName())), i(naviInfo));
        }
        if (!k06.r()) {
            int turnRoadDirType = naviInfo.getTurnRoadDirType();
            if (rp5.D(turnRoadDirType)) {
                TurnRoadDirType r = rp5.r(turnRoadDirType);
                Context c2 = o41.c();
                Resources resources = o41.b().getResources();
                if (r == null) {
                    r = TurnRoadDirType.GRD_UNKNOW;
                }
                return c2.getString(resources.getIdentifier(r.getType(), "string", o41.b().getPackageName()));
            }
        }
        return k06.t(naviInfo.getCurShowRoadNames()) ? k06.t(naviInfo.getDirTexts()) ? rp5.m(naviInfo) : String.format(Locale.ENGLISH, o41.c().getString(o41.b().getResources().getIdentifier("navi_towards", "string", o41.b().getPackageName())), rp5.d(naviInfo.getDirTexts())) : i(naviInfo);
    }

    public final StringBuilder l(NaviInfo naviInfo) {
        if (!rp5.E(naviInfo)) {
            return null;
        }
        StringBuilder sb = new StringBuilder();
        List naviWayPointList = NaviCurRecord.getInstance().getNaviWayPointList();
        int stopNumsPassedDuringNavi = NaviCurRecord.getInstance().getStopNumsPassedDuringNavi();
        if (naviWayPointList.size() <= 0) {
            return sb;
        }
        String format = String.format(Locale.ENGLISH, o41.c().getResources().getString(o41.b().getResources().getIdentifier(TurnRoadDirType.GRD_WAYPOINT.getType(), "string", o41.b().getPackageName())), RoadReportType.CAMERA_INCORRECT);
        if (naviWayPointList.size() == 1 || stopNumsPassedDuringNavi == 0) {
            String r0 = c.r0(((RecordSiteInfo) naviWayPointList.get(0)).getSiteName());
            if (com.huawei.maps.businessbase.utils.a.y(r0)) {
                sb.append(format);
                return sb;
            }
            sb.append(format);
            sb.append(r0);
            return sb;
        }
        if (stopNumsPassedDuringNavi >= naviWayPointList.size()) {
            return sb;
        }
        String r02 = c.r0(((RecordSiteInfo) naviWayPointList.get(stopNumsPassedDuringNavi)).getSiteName());
        if (com.huawei.maps.businessbase.utils.a.y(r02)) {
            sb.append(format);
            return sb;
        }
        sb.append(format);
        sb.append(r02);
        return sb;
    }

    public final void m() {
        try {
            stopForeground(true);
            stopSelf();
        } catch (Exception unused) {
            hm4.p(c, "stopNavService catch exception");
        }
    }

    @Nullable
    public IBinder onBind(Intent intent) {
        return new a();
    }

    public void onCreate() {
        hm4.p(c, "nav notification service create:" + System.currentTimeMillis());
        super.onCreate();
    }

    public void onDestroy() {
        hm4.p(c, "nav notification service destroy.");
        NotificationManager f = ar5.c().f();
        if (this.b && f != null) {
            f.cancel(ContributionRequestCodes.REQUEST_ADD_NEW_PLACE_CODE);
        }
        m();
        ar5.c().i();
        super.onDestroy();
    }

    public int onStartCommand(Intent intent, int i, int i2) {
        hm4.p(c, "nav notification start:" + System.currentTimeMillis());
        return super.onStartCommand(intent, i, i2);
    }
}