正在查看: Petal Maps v4.7.0.310001 应用的 NavNotificationService.java JAVA 源代码文件
本页面展示 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);
}
}