diff --git a/.idea/misc.xml b/.idea/misc.xml
index 21e99e2dc0..cd77a1f062 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -4,7 +4,7 @@
-
+
\ No newline at end of file
diff --git a/foudations/mogo-utils/src/main/java/com/mogo/utils/AppUtils.java b/foudations/mogo-utils/src/main/java/com/mogo/utils/AppUtils.java
index cce182c8b2..d5900526a1 100644
--- a/foudations/mogo-utils/src/main/java/com/mogo/utils/AppUtils.java
+++ b/foudations/mogo-utils/src/main/java/com/mogo/utils/AppUtils.java
@@ -3,6 +3,7 @@ package com.mogo.utils;
import android.app.ActivityManager;
import android.content.ComponentName;
import android.content.Context;
+import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.text.TextUtils;
@@ -46,4 +47,14 @@ public class AppUtils {
return true;
}
}
+
+ public static String getApplicationLabel( Context context, String pkgName ) {
+ try {
+ PackageManager pm = context.getPackageManager();
+ ApplicationInfo appInfo = pm.getApplicationInfo( pkgName, PackageManager.GET_META_DATA );
+ return pm.getApplicationLabel( appInfo ).toString();
+ } catch ( Exception e ) {
+ return null;
+ }
+ }
}
diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorFragment.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorFragment.java
index 0df5e48b9e..5c7b08890a 100644
--- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorFragment.java
+++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorFragment.java
@@ -1,6 +1,7 @@
package com.mogo.module.apps;
import android.os.Bundle;
+import android.text.TextUtils;
import android.view.View;
import android.widget.ImageView;
@@ -9,16 +10,17 @@ import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
-import com.mogo.commons.device.Devices;
import com.mogo.commons.mvp.MvpFragment;
-import com.mogo.commons.voice.AIAssist;
import com.mogo.module.apps.adapter.AppIndicatorAdapter;
import com.mogo.module.apps.anim.AnimWrapper;
import com.mogo.module.apps.applaunch.AppLauncher;
import com.mogo.module.apps.applaunch.BaseAppLauncher;
import com.mogo.module.apps.applaunch.InternalFunctionLauncher;
+import com.mogo.module.apps.model.AppInfo;
import com.mogo.module.apps.model.NavigatorApps;
import com.mogo.module.apps.view.OnAiAssistClickListener;
+import com.mogo.utils.AppUtils;
+import com.mogo.utils.CommonUtils;
import java.util.HashMap;
import java.util.Map;
@@ -58,7 +60,7 @@ public class AppNavigatorFragment extends MvpFragment< AppNavigatorView, AppNavi
mAppIndicatorAdapter = new AppIndicatorAdapter( getContext(), NavigatorApps.getApps() );
mAppIndicatorAdapter.setOnItemClickedListener( ( data, position ) -> {
mLauncher.launch( getContext(), data );
- trackNavigatorClickEvent( data.getTrackType() );
+ trackNavigatorClickEvent( data );
} );
mNavigatorAppsList.setAdapter( mAppIndicatorAdapter );
@@ -118,9 +120,18 @@ public class AppNavigatorFragment extends MvpFragment< AppNavigatorView, AppNavi
AppsListActivity.start( getActivity() );
}
- private void trackNavigatorClickEvent( int type ) {
+ private void trackNavigatorClickEvent( AppInfo app ) {
final Map< String, Object > properties = new HashMap<>();
- properties.put( "type", type );
+ String appLabel = AppUtils.getApplicationLabel( getContext(), app.getPackageName() );
+ properties.put( "appname", app.getName() );
+ if ( !TextUtils.isEmpty( appLabel ) ) {
+ properties.put( "appname", appLabel );
+ }
+ if ( !TextUtils.equals( "全部应用", app.getName() ) ) {
+ properties.put( "appversion", CommonUtils.getVersionName( getContext(), app.getPackageName() ) );
+ } else {
+ properties.put( "appversion", CommonUtils.getVersionName( getContext() ) );
+ }
AppServiceHandler.getMogoAnalytics().track( "Launcher_APP_Icon", properties );
}
diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/applaunch/InternalFunctionLauncher.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/applaunch/InternalFunctionLauncher.java
index 721d801fce..baee9e5b69 100644
--- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/applaunch/InternalFunctionLauncher.java
+++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/applaunch/InternalFunctionLauncher.java
@@ -27,7 +27,7 @@ public class InternalFunctionLauncher extends BaseAppLauncher {
@Override
public void launch( Context context, AppInfo appInfo ) {
switch ( appInfo.getPackageName() ) {
- case "com.mogo.launcher.navi.search":
+ case "com.autonavi.amapauto":
if ( CustomNaviInterrupter.getInstance().interrupt() ) {
try {
LaunchUtils.launchByPkg( context, "com.autonavi.amapauto" );
diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/NavigatorApps.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/NavigatorApps.java
index f1e00886b6..be2b7b2fc1 100644
--- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/NavigatorApps.java
+++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/NavigatorApps.java
@@ -13,10 +13,10 @@ import java.util.List;
*/
public class NavigatorApps {
- private static AppInfo app = new AppInfo( "导航", "com.mogo.launcher.navi.search", "", 0, null, R.drawable.module_apps_ic_navigator_navi, 1 );
- private static AppInfo app_ = new AppInfo( "导航", "com.mogo.launcher.navi.search", "", 0, null, R.drawable.module_apps_ic_navigator_navi_disable, 1 );
+ private static AppInfo app = new AppInfo( "高德地图", "com.autonavi.amapauto", "", 0, null, R.drawable.module_apps_ic_navigator_navi, 1 );
+ private static AppInfo app_ = new AppInfo( "高德地图", "com.autonavi.amapauto", "", 0, null, R.drawable.module_apps_ic_navigator_navi_disable, 1 );
// private static AppInfo app2 = new AppInfo( "音乐", "com.tencent.wecarflow", "", 0, null, R.drawable.module_apps_ic_navigator_media, 2 );
- private static AppInfo app2 = new AppInfo( "音乐", "cn.kuwo.kwmusiccar", "", 0, null, R.drawable.module_apps_ic_navigator_media, 2 );
+ private static AppInfo app2 = new AppInfo( "酷我音乐", "cn.kuwo.kwmusiccar", "", 0, null, R.drawable.module_apps_ic_navigator_media, 2 );
private static AppInfo app3 = new AppInfo( "车聊聊", "com.zhidao.imdemo", "", 0, null, R.drawable.module_apps_ic_navigator_im, 6 );
private static AppInfo app4 = new AppInfo( "全部应用", "com.mogo.launcher.applist", "", 0, null, R.drawable.module_apps_ic_navigator_applist, 4 );
diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/view/OnAiAssistClickListener.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/view/OnAiAssistClickListener.java
index 8be87989e0..032ea2ad8e 100644
--- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/view/OnAiAssistClickListener.java
+++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/view/OnAiAssistClickListener.java
@@ -5,12 +5,8 @@ import android.view.View;
import com.mogo.commons.debug.DebugConfig;
import com.mogo.commons.device.Devices;
import com.mogo.commons.voice.AIAssist;
-import com.mogo.module.apps.AppServiceHandler;
import com.mogo.utils.TipToast;
-import java.util.HashMap;
-import java.util.Map;
-
public
/**
* @author congtaowang
@@ -32,11 +28,9 @@ class OnAiAssistClickListener implements View.OnClickListener {
public void onClick( View v ) {
if ( Devices.isBind() || !DebugConfig.isActiveAIAssistFlag() ) {
AIAssist.startAssistant( v.getContext() );
- trackNavigatorClickEvent( 5 );
} else {
if ( mDebugModeOpen ) {
AIAssist.startAssistant( v.getContext(), 1 );
- trackNavigatorClickEvent( 5 );
return;
}
if ( mClickCounter == 0 ) {
@@ -60,10 +54,4 @@ class OnAiAssistClickListener implements View.OnClickListener {
}
}
- private void trackNavigatorClickEvent( int type ) {
- final Map< String, Object > properties = new HashMap<>();
- properties.put( "type", type );
- AppServiceHandler.getMogoAnalytics().track( "Launcher_APP_Icon", properties );
- }
-
}
diff --git a/modules/mogo-module-apps/src/main/res/drawable-ldpi/module_apps_ic_car_setting.png b/modules/mogo-module-apps/src/main/res/drawable-ldpi/module_apps_ic_car_setting.png
index 2f7c3a0726..3f8c6f8483 100644
Binary files a/modules/mogo-module-apps/src/main/res/drawable-ldpi/module_apps_ic_car_setting.png and b/modules/mogo-module-apps/src/main/res/drawable-ldpi/module_apps_ic_car_setting.png differ
diff --git a/modules/mogo-module-apps/src/main/res/drawable-mdpi/module_apps_ic_car_setting.png b/modules/mogo-module-apps/src/main/res/drawable-mdpi/module_apps_ic_car_setting.png
index 2f7c3a0726..3f8c6f8483 100644
Binary files a/modules/mogo-module-apps/src/main/res/drawable-mdpi/module_apps_ic_car_setting.png and b/modules/mogo-module-apps/src/main/res/drawable-mdpi/module_apps_ic_car_setting.png differ
diff --git a/modules/mogo-module-apps/src/main/res/drawable-xhdpi/module_apps_ic_car_setting.png b/modules/mogo-module-apps/src/main/res/drawable-xhdpi/module_apps_ic_car_setting.png
old mode 100755
new mode 100644
index cc80499158..58aba30002
Binary files a/modules/mogo-module-apps/src/main/res/drawable-xhdpi/module_apps_ic_car_setting.png and b/modules/mogo-module-apps/src/main/res/drawable-xhdpi/module_apps_ic_car_setting.png differ
diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/AppOperationIntentHandler.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/AppOperationIntentHandler.java
index aaa1fa14d3..e02c90a89e 100644
--- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/AppOperationIntentHandler.java
+++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/AppOperationIntentHandler.java
@@ -35,6 +35,9 @@ public class AppOperationIntentHandler implements IntentHandler {
String app = object.optString( "object" );
String operation = object.optString( "operation" );
if ( TextUtils.equals( "打开", operation ) ) {
+ if ( TextUtils.isEmpty( sAppPackages.get( app ) ) ) {
+ return;
+ }
try {
LaunchUtils.launchByPkg( context, sAppPackages.get( app ) );
} catch ( Exception e ) {