添加音乐和车辆设置按钮点击跳转

This commit is contained in:
wangcongtao
2020-02-03 17:43:37 +08:00
parent 08645d8d55
commit e26b252277
5 changed files with 54 additions and 9 deletions

View File

@@ -8,15 +8,15 @@ import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import com.alibaba.android.arouter.launcher.ARouter;
import com.mogo.commons.mvp.IView;
import com.mogo.commons.mvp.MvpFragment;
import com.mogo.commons.mvp.Presenter;
import com.mogo.module.apps.utils.LaunchUtils;
import com.mogo.module.common.MogoModulePaths;
import com.mogo.service.MogoServicePaths;
import com.mogo.service.analytics.IMogoAnalytics;
import com.mogo.service.fragmentmanager.FragmentDescriptor;
import com.mogo.service.fragmentmanager.IMogoFragmentManager;
import com.mogo.service.module.IMogoModuleProvider;
import com.mogo.utils.TipToast;
import java.util.HashMap;
import java.util.Map;
@@ -63,10 +63,20 @@ public class AppNavigatorFragment extends MvpFragment< AppNavigatorView, AppNavi
trackNavigatorClickEvent( 1 );
} );
mMediaCenter.setOnClickListener( view -> {
trackNavigatorClickEvent( 2 );
try {
LaunchUtils.launchByPkg( getContext(), AppsConst.APP_PKG_MUSIC );
trackNavigatorClickEvent( 2 );
} catch ( Exception e ) {
TipToast.shortTip( R.string.module_apps_str_no_app );
}
} );
mCarSettings.setOnClickListener( view -> {
trackNavigatorClickEvent( 3 );
try {
LaunchUtils.launchByPkg( getContext(), AppsConst.APP_PKG_CAR_SETTINGS );
trackNavigatorClickEvent( 3 );
} catch ( Exception e ) {
TipToast.shortTip( R.string.module_apps_str_no_app );
}
} );
mApps.setOnClickListener( view -> {
openAppsPanel();

View File

@@ -18,4 +18,13 @@ public class AppsConst {
public static final String CMD_CLOSE_APPS_PANEL = "CMD_CLOSE_APPS_PANEL";
public static final String[] CMD_CLOSE_APPS_PANEL_UN_WAKEUP_WORDS = {"关闭全部应用"};
/**
* 媒体跳转
*/
public static final String APP_PKG_MUSIC = "com.pvetec.musics";
/**
* 车辆设置跳转
*/
public static final String APP_PKG_CAR_SETTINGS = "com.zhidao.settings";
}

View File

@@ -9,6 +9,7 @@ import com.alibaba.android.arouter.launcher.ARouter;
import com.mogo.commons.mvp.Presenter;
import com.mogo.module.apps.model.AppInfo;
import com.mogo.module.apps.model.AppsModel;
import com.mogo.module.apps.utils.LaunchUtils;
import com.mogo.service.MogoServicePaths;
import com.mogo.service.analytics.IMogoAnalytics;
import com.mogo.utils.ThreadPoolService;
@@ -66,11 +67,8 @@ public class AppsPresenter extends Presenter< AppsView > {
}
trackAppClicked( appInfo );
try {
Intent intent = getContext().getPackageManager().getLaunchIntentForPackage( appInfo.getPackageName() );
intent.addFlags( Intent.FLAG_ACTIVITY_NEW_TASK );
getContext().startActivity( intent );
LaunchUtils.launchByPkg( getContext(), appInfo.getPackageName() );
} catch ( Exception e ) {
TipToast.shortTip( R.string.module_apps_str_no_app );
}

View File

@@ -0,0 +1,28 @@
package com.mogo.module.apps.utils;
import android.content.Context;
import android.content.Intent;
import com.mogo.module.apps.R;
import com.mogo.utils.TipToast;
/**
* @author congtaowang
* @since 2020-02-03
* <p>
* 描述
*/
public class LaunchUtils {
/**
* 通过包名启动app
*
* @param context
* @param pkg 包名
*/
public static void launchByPkg( Context context, String pkg ) throws Exception{
Intent intent = context.getPackageManager().getLaunchIntentForPackage( pkg );
intent.addFlags( Intent.FLAG_ACTIVITY_NEW_TASK );
context.startActivity( intent );
}
}

View File

@@ -513,7 +513,7 @@ public class MogoServiceProvider implements IMogoModuleProvider,
@Override
public void onStatusChanged( StatusDescriptor descriptor, boolean isTrue ) {
switch ( descriptor ) {
case USER_INTERACTED:
case USER_INTERACTED:
if ( isTrue && !mRefreshRemainingTimeStatus ) {
mRefreshRemainingTimeStatus = true;
mRefreshRemainingTime += mAutoRefreshStrategy.getInterruptInterval();