Merge branch 'dev_scheme' into dev
This commit is contained in:
@@ -29,6 +29,15 @@
|
||||
<action android:name="android.intent.action.VIEW" />
|
||||
<category android:name="android.intent.category.BROWSABLE" />
|
||||
</intent-filter>
|
||||
|
||||
<intent-filter>
|
||||
<data
|
||||
android:host="launcher"
|
||||
android:path="/main/share"
|
||||
android:scheme="mogo" />
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<action android:name="android.intent.action.VIEW" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</application>
|
||||
</manifest>
|
||||
@@ -17,6 +17,8 @@ public class MainIndependentActivity extends MainActivity {
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
// 独立app需要在onCreate里面增加处理scheme的情况
|
||||
mPresenter.handleSchemeIntent(getIntent());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -34,7 +34,10 @@ public class BackToMainHomeManager {
|
||||
}
|
||||
|
||||
public static void backToLauncher() {
|
||||
|
||||
if (mStatusManager == null) {
|
||||
Logger.e(TAG,"未初始化完成");
|
||||
return;
|
||||
}
|
||||
if ( mStatusManager.isMainPageOnResume() ) {
|
||||
if ( mStatusManager.isSearchUIShow() ) {
|
||||
mFragmentManager.clearAll();
|
||||
|
||||
@@ -222,13 +222,7 @@ public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresent
|
||||
// }
|
||||
// });
|
||||
// 原始逻辑
|
||||
isClickShare = true;
|
||||
if ( mIMogoAuthorizeModuleManager.needAuthorize( AUTHORIZE_TYPE_LAUNCHER_SHARE ) ) {
|
||||
mIMogoAuthorizeModuleManager.invokeAuthorization( AUTHORIZE_TYPE_LAUNCHER_SHARE );
|
||||
} else {
|
||||
ShareControl.getInstance( getActivity() ).showDialog();
|
||||
traceData( "1" );
|
||||
}
|
||||
showShareDialog();
|
||||
} );
|
||||
|
||||
mDisplayOverview = findViewById( R.id.module_ext_id_display_overview );
|
||||
@@ -348,6 +342,16 @@ public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresent
|
||||
mNaviInfo.inflate( rootView );
|
||||
}
|
||||
|
||||
public void showShareDialog() {
|
||||
isClickShare = true;
|
||||
if ( mIMogoAuthorizeModuleManager.needAuthorize( AUTHORIZE_TYPE_LAUNCHER_SHARE ) ) {
|
||||
mIMogoAuthorizeModuleManager.invokeAuthorization( AUTHORIZE_TYPE_LAUNCHER_SHARE );
|
||||
} else {
|
||||
mApis.getShareManager().showShareDialog();
|
||||
traceData( "1" );
|
||||
}
|
||||
}
|
||||
|
||||
private static final String AUTONAVI_STANDARD_BROADCAST_RECV = "AUTONAVI_STANDARD_BROADCAST_RECV";
|
||||
|
||||
@NonNull
|
||||
@@ -395,7 +399,7 @@ public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresent
|
||||
public void authorizeSuccess() {
|
||||
Log.d( TAG, "authorizeSuccess --------> isClickShare = " + isClickShare );
|
||||
if ( isClickShare ) {
|
||||
ShareControl.getInstance( getActivity() ).showDialog();
|
||||
mApis.getShareManager().showShareDialog();
|
||||
traceData( "1" );
|
||||
} else {
|
||||
mEntrancePresenter.handleNeedAuthorizeCmd();
|
||||
|
||||
@@ -14,7 +14,6 @@ import com.mogo.commons.mvp.Presenter;
|
||||
import com.mogo.commons.voice.AIAssist;
|
||||
import com.mogo.commons.voice.IMogoVoiceCmdCallBack;
|
||||
import com.mogo.module.authorize.authprovider.module.IMogoAuthorizeModuleManager;
|
||||
import com.mogo.module.authorize.model.BaseResponse;
|
||||
import com.mogo.module.extensions.ExtensionsModuleConst;
|
||||
import com.mogo.module.extensions.net.UserInfoNetApiServices;
|
||||
import com.mogo.module.extensions.userinfo.UserInfo;
|
||||
@@ -22,6 +21,7 @@ import com.mogo.module.extensions.userinfo.UserInfoConstant;
|
||||
import com.mogo.module.extensions.userinfo.UserInfoResponse;
|
||||
import com.mogo.module.extensions.utils.ExtensionsConfig;
|
||||
import com.mogo.module.share.ShareControl;
|
||||
import com.mogo.module.share.manager.ServiceApisManager;
|
||||
import com.mogo.service.IMogoServiceApis;
|
||||
import com.mogo.service.MogoServicePaths;
|
||||
import com.mogo.service.analytics.IMogoAnalytics;
|
||||
@@ -119,7 +119,7 @@ public class EntrancePresenter extends Presenter<EntranceView> {
|
||||
if (mIMogoAuthorizeModuleManager.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_SHARE)) {
|
||||
mIMogoAuthorizeModuleManager.invokeAuthorization(AUTHORIZE_TYPE_LAUNCHER_SHARE);
|
||||
} else {
|
||||
ShareControl.getInstance(mContext).dismissDialog();
|
||||
ServiceApisManager.serviceApis.getShareManager().dismissShareDialog();
|
||||
}
|
||||
} else if (cmd.equals(ExtensionsModuleConst.UPLOAD_ROAD_BLOCK)) { //上报拥堵
|
||||
if (mIMogoAuthorizeModuleManager.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_SHARE)) {
|
||||
@@ -227,7 +227,7 @@ public class EntrancePresenter extends Presenter<EntranceView> {
|
||||
if (mIMogoAuthorizeModuleManager.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_SHARE)) {
|
||||
mIMogoAuthorizeModuleManager.invokeAuthorization(AUTHORIZE_TYPE_LAUNCHER_SHARE);
|
||||
} else {
|
||||
ShareControl.getInstance(mContext).showDialog();
|
||||
ServiceApisManager.serviceApis.getShareManager().dismissShareDialog();
|
||||
Log.d(TAG, "mogoIntentListener 我要分享 ----> ");
|
||||
traceData("2");
|
||||
}
|
||||
@@ -258,7 +258,7 @@ public class EntrancePresenter extends Presenter<EntranceView> {
|
||||
if (mIMogoAuthorizeModuleManager.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_SHARE)) {
|
||||
mIMogoAuthorizeModuleManager.invokeAuthorization(AUTHORIZE_TYPE_LAUNCHER_SHARE);
|
||||
} else {
|
||||
ShareControl.getInstance(mContext).dismissDialog();
|
||||
ServiceApisManager.serviceApis.getShareManager().dismissShareDialog();
|
||||
Log.d(TAG, "mogoIntentListener 关闭分享框 唤醒 ----> ");
|
||||
}
|
||||
} else if (intentStr.equals(ExtensionsModuleConst.NO_REPLY_SHARE_DIALOG_CLOSE)) {
|
||||
@@ -266,7 +266,7 @@ public class EntrancePresenter extends Presenter<EntranceView> {
|
||||
if (mIMogoAuthorizeModuleManager.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_SHARE)) {
|
||||
mIMogoAuthorizeModuleManager.invokeAuthorization(AUTHORIZE_TYPE_LAUNCHER_SHARE);
|
||||
} else {
|
||||
ShareControl.getInstance(mContext).dismissDialog();
|
||||
ServiceApisManager.serviceApis.getShareManager().dismissShareDialog();
|
||||
Logger.d(TAG, "mogoIntentListener 两次未回复关闭对话框");
|
||||
}
|
||||
} else if (intentStr.equals(ExtensionsModuleConst.UPLOAD_ROAD_CONDITION)) { //上报路况
|
||||
@@ -290,7 +290,7 @@ public class EntrancePresenter extends Presenter<EntranceView> {
|
||||
if (!TextUtils.isEmpty(mVoiceCmdType)) {
|
||||
if (mVoiceCmdType.equals(ExtensionsModuleConst.CANCLE_SHARE) || mVoiceCmdType.equals(ExtensionsModuleConst.CLOSE)
|
||||
|| mVoiceCmdType.equals(ExtensionsModuleConst.SHARE_DIALOG_CLOSE) || mVoiceCmdType.equals(ExtensionsModuleConst.NO_REPLY_SHARE_DIALOG_CLOSE)) { //关闭分享弹框
|
||||
ShareControl.getInstance(mContext).dismissDialog();
|
||||
ServiceApisManager.serviceApis.getShareManager().dismissShareDialog();
|
||||
} else if (mVoiceCmdType.equals(ExtensionsModuleConst.GO_TO_SHARE)) { //打开分享弹框
|
||||
if (!TextUtils.isEmpty(mVoiceCmdShareType)) {
|
||||
if (mVoiceCmdShareType.equals("封路")) {
|
||||
@@ -304,7 +304,7 @@ public class EntrancePresenter extends Presenter<EntranceView> {
|
||||
uploadTrfficCheck();
|
||||
}
|
||||
} else {
|
||||
ShareControl.getInstance(mContext).showDialog();
|
||||
ServiceApisManager.serviceApis.getShareManager().showShareDialog();
|
||||
Log.d(TAG, "handleNeedAuthorizeCmd 我要分享 ----> ");
|
||||
traceData("2");
|
||||
}
|
||||
@@ -333,7 +333,7 @@ public class EntrancePresenter extends Presenter<EntranceView> {
|
||||
sendShareReceiver(REPORT_TANLU_BLOCK);
|
||||
Logger.d("EntrancePresenter", "mogoIntentListener 上报路况 ----> ");
|
||||
traceTypeData("1");
|
||||
ShareControl.getInstance(mContext).dismissDialog();
|
||||
ServiceApisManager.serviceApis.getShareManager().dismissShareDialog();
|
||||
}
|
||||
|
||||
private void uploadTrfficCheck() {
|
||||
@@ -341,7 +341,7 @@ public class EntrancePresenter extends Presenter<EntranceView> {
|
||||
sendShareReceiver(REPORT_TANLU_TRAFFIC_CHECK);
|
||||
Logger.d("EntrancePresenter", "mogoIntentListener 分享交通检查 ----> ");
|
||||
traceTypeData("3");
|
||||
ShareControl.getInstance(mContext).dismissDialog();
|
||||
ServiceApisManager.serviceApis.getShareManager().dismissShareDialog();
|
||||
}
|
||||
|
||||
private void uploadRoadClosed() {
|
||||
@@ -349,7 +349,7 @@ public class EntrancePresenter extends Presenter<EntranceView> {
|
||||
sendShareReceiver(REPORT_TANLU_CLOSURE);
|
||||
Logger.d("EntrancePresenter", "mogoIntentListener 分享封路 ----> ");
|
||||
traceTypeData("4");
|
||||
ShareControl.getInstance(mContext).dismissDialog();
|
||||
ServiceApisManager.serviceApis.getShareManager().dismissShareDialog();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -368,7 +368,7 @@ public class EntrancePresenter extends Presenter<EntranceView> {
|
||||
// intent.setData(Uri.parse("freshthing://com.zhidao.fresh.things/shareOilPrice"));
|
||||
// getContext().startActivity(intent);
|
||||
// traceTypeData("2");
|
||||
// ShareControl.getInstance(mContext).dismissDialog();
|
||||
// ServiceApisManager.serviceApis.getShareManager().dismissShareDialog();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -80,6 +80,12 @@ public class SchemeIntent implements IMogoStatusChangedListener {
|
||||
case "/main/switch2":
|
||||
handleSwitch2Action( target );
|
||||
break;
|
||||
case "/main/share":
|
||||
Logger.d(TAG,"收到打开分享框的scheme,准备打开分享框");
|
||||
mApis.getShareManager().showShareDialog();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -2,10 +2,13 @@ package com.mogo.module.share;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.alibaba.android.arouter.launcher.ARouter;
|
||||
import com.mogo.module.share.dialog.LaucherShareDialog;
|
||||
import com.mogo.module.share.manager.ServiceApisManager;
|
||||
import com.mogo.service.IMogoServiceApis;
|
||||
import com.mogo.service.MogoServicePaths;
|
||||
import com.mogo.service.share.IMogoShareManager;
|
||||
import com.mogo.utils.logger.Logger;
|
||||
|
||||
/**
|
||||
@@ -13,55 +16,28 @@ import com.mogo.utils.logger.Logger;
|
||||
* @description 分享弹框接口
|
||||
* @since 2020-01-10
|
||||
*/
|
||||
public class ShareControl implements IShareControl {
|
||||
@Route(path = MogoServicePaths.PATH_SHARE)
|
||||
public class ShareControl implements IMogoShareManager {
|
||||
|
||||
private static volatile ShareControl sInstance;
|
||||
private Context mContext;
|
||||
private LaucherShareDialog mShareDialog;
|
||||
|
||||
private IMogoServiceApis mogoServiceApis;
|
||||
|
||||
private ShareControl(Context context) {
|
||||
mContext = context;
|
||||
mogoServiceApis =
|
||||
(IMogoServiceApis) ARouter.getInstance().build(MogoServicePaths.PATH_SERVICE_APIS).navigation(context);
|
||||
}
|
||||
|
||||
public IMogoServiceApis getMogoServiceApis(){
|
||||
return mogoServiceApis;
|
||||
}
|
||||
|
||||
public static ShareControl getInstance(Context context) {
|
||||
if (sInstance == null) {
|
||||
synchronized (ShareControl.class) {
|
||||
if (sInstance == null) {
|
||||
sInstance = new ShareControl(context);
|
||||
}
|
||||
}
|
||||
}
|
||||
return sInstance;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void showDialog() {
|
||||
|
||||
boolean isAdasShow = mogoServiceApis.getStatusManagerApi().isADASShow();
|
||||
Logger.d("ShareControl", "showDialog 判断adas是否展示: " + isAdasShow);
|
||||
// if (isAdasShow) {
|
||||
// mogoServiceApis.getAdasControllerApi().closeADAS();
|
||||
// }
|
||||
|
||||
public void showShareDialog() {
|
||||
mShareDialog = new LaucherShareDialog(mContext);
|
||||
// mShareDialog.setCanceledOnTouchOutside(true);
|
||||
mShareDialog.show();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dismissDialog() {
|
||||
public void dismissShareDialog() {
|
||||
if (mShareDialog != null) {
|
||||
mShareDialog.dismiss();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void init(Context context) {
|
||||
mContext = context;
|
||||
ServiceApisManager.INSTANCE.init(context);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import android.content.Context
|
||||
import android.content.Intent
|
||||
import com.mogo.module.share.constant.ShareConstants
|
||||
import com.mogo.module.share.constant.ShareConstants.*
|
||||
import com.mogo.module.share.manager.ServiceApisManager
|
||||
import com.mogo.module.share.manager.UploadHelper
|
||||
import com.mogo.utils.logger.Logger
|
||||
import org.json.JSONObject
|
||||
@@ -24,7 +25,8 @@ class ShareVoiceCmdReceiver : BroadcastReceiver() {
|
||||
val seekHelp = Intent(context, VoiceCmdService::class.java)
|
||||
seekHelp.putExtra(ShareConstants.VOICE_CMD_SERVICE_EVENT_KEY, ShareConstants.VOICE_CMD_SERVICE_SEEK_HELP)
|
||||
context.startService(seekHelp)
|
||||
ShareControl.getInstance(context).dismissDialog()
|
||||
ServiceApisManager.serviceApis.shareManager.dismissShareDialog()
|
||||
// ShareControl.getInstance(context).dismissDialog()
|
||||
}
|
||||
VOICE_CMD_GO_TO_SHARE ->{
|
||||
val ob = JSONObject(intent.getStringExtra("data") ?: "").opt("ob")
|
||||
@@ -32,23 +34,28 @@ class ShareVoiceCmdReceiver : BroadcastReceiver() {
|
||||
when (ob) {
|
||||
"积水"->{
|
||||
UploadHelper.upload(context, TYPE_STAGNANT_WATER)
|
||||
ShareControl.getInstance(context).dismissDialog()
|
||||
ServiceApisManager.serviceApis.shareManager.dismissShareDialog()
|
||||
// ShareControl.getInstance(context).dismissDialog()
|
||||
}
|
||||
"积冰"->{
|
||||
UploadHelper.upload(context, TYPE_ROAD_ICY)
|
||||
ShareControl.getInstance(context).dismissDialog()
|
||||
ServiceApisManager.serviceApis.shareManager.dismissShareDialog()
|
||||
// ShareControl.getInstance(context).dismissDialog()
|
||||
}
|
||||
"雾"->{
|
||||
UploadHelper.upload(context, TYPE_DENSE_FOG)
|
||||
ShareControl.getInstance(context).dismissDialog()
|
||||
ServiceApisManager.serviceApis.shareManager.dismissShareDialog()
|
||||
// ShareControl.getInstance(context).dismissDialog()
|
||||
}
|
||||
"交通事故"->{
|
||||
UploadHelper.upload(context, TYPE_ACCIDENT)
|
||||
ShareControl.getInstance(context).dismissDialog()
|
||||
ServiceApisManager.serviceApis.shareManager.dismissShareDialog()
|
||||
// ShareControl.getInstance(context).dismissDialog()
|
||||
}
|
||||
"施工"->{
|
||||
UploadHelper.upload(context, TYPE_ROAD_CONSTRUCTION)
|
||||
ShareControl.getInstance(context).dismissDialog()
|
||||
ServiceApisManager.serviceApis.shareManager.dismissShareDialog()
|
||||
// ShareControl.getInstance(context).dismissDialog()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -59,7 +66,8 @@ class ShareVoiceCmdReceiver : BroadcastReceiver() {
|
||||
// 上报实时路况
|
||||
Logger.d(TAG, "分享框准备触发上报实时路况")
|
||||
UploadHelper.upload(context, TYPE_REAL_TIME_TRAFFIC)
|
||||
ShareControl.getInstance(context).dismissDialog()
|
||||
ServiceApisManager.serviceApis.shareManager.dismissShareDialog()
|
||||
// ShareControl.getInstance(context).dismissDialog()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -66,8 +66,8 @@ public class LaucherShareDialog implements View.OnClickListener {
|
||||
|
||||
public LaucherShareDialog(@NonNull Context context) {
|
||||
this.mContext = context;
|
||||
mAnalytics = ShareControl.getInstance(context).getMogoServiceApis().getAnalyticsApi();
|
||||
mApis = (IMogoServiceApis) ARouter.getInstance().build( MogoServicePaths.PATH_SERVICE_APIS ).navigation(context);
|
||||
mAnalytics = mApis.getAnalyticsApi();
|
||||
mStatusManager = mApis.getStatusManagerApi();
|
||||
}
|
||||
|
||||
|
||||
@@ -7,7 +7,6 @@ import com.mogo.commons.data.BaseData
|
||||
import com.mogo.commons.network.SubscribeImpl
|
||||
import com.mogo.commons.voice.AIAssist
|
||||
import com.mogo.commons.voice.IMogoVoiceCmdCallBack
|
||||
import com.mogo.module.share.ShareControl
|
||||
import com.mogo.module.share.bean.SeekRecord
|
||||
import com.mogo.module.share.bean.SeekRequest
|
||||
import com.mogo.module.share.bean.getJson
|
||||
@@ -20,7 +19,6 @@ import com.mogo.utils.storage.SharedPrefsMgr
|
||||
import com.zhidao.auto.platform.util.DeviceUtil
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.schedulers.Schedulers
|
||||
import java.util.*
|
||||
|
||||
/**
|
||||
* 故障求助管理类,相关故障求助操作的具体实现类
|
||||
@@ -73,7 +71,6 @@ object SeekHelpManager {
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 寻求帮助,是开始故障求助的入口
|
||||
* 由于当前需求仅需要提供这一个方法,所以context的初始化放到了此方法,后面如果有增加,需要把这部分提出去
|
||||
@@ -88,7 +85,8 @@ object SeekHelpManager {
|
||||
this.context = context
|
||||
}
|
||||
aiAssist = AIAssist.getInstance(context)
|
||||
isSeekHelp = ShareControl.getInstance(SeekHelpManager.context).mogoServiceApis.statusManagerApi.isSeekHelping
|
||||
|
||||
isSeekHelp = ServiceApisManager.serviceApis.statusManagerApi.isSeekHelping
|
||||
Logger.d(TAG, "开始故障求助上报---${isSeekHelp}")
|
||||
seekListenerList.add(seekHelpListener)
|
||||
when {
|
||||
@@ -157,11 +155,11 @@ object SeekHelpManager {
|
||||
val seekRequest = SeekRequest(DeviceUtil.getSn())
|
||||
val param = mutableMapOf("data" to seekRequest.getJson())
|
||||
|
||||
ShareControl.getInstance(context).mogoServiceApis.networkApi.create(ShareApiService::class.java, HttpConstant.getNetHost()).sendHelpSignal(param).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(object : SubscribeImpl<BaseData>(RequestOptions.create(context)) {
|
||||
ServiceApisManager.serviceApis.networkApi.create(ShareApiService::class.java, HttpConstant.getNetHost()).sendHelpSignal(param).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(object : SubscribeImpl<BaseData>(RequestOptions.create(context)) {
|
||||
override fun onSuccess(o: BaseData?) {
|
||||
super.onSuccess(o)
|
||||
// 接口请求成功,内部同步v2x状态,通知adas,改变自车图标
|
||||
ShareControl.getInstance(context).mogoServiceApis.statusManagerApi.setSeekHelping("ShareDialog", true)
|
||||
ServiceApisManager.serviceApis.statusManagerApi.setSeekHelping("ShareDialog", true)
|
||||
SharedPrefsMgr.getInstance(context!!).putLong("seek_help_time", System.currentTimeMillis())
|
||||
isSeekHelp = true
|
||||
aiAssist?.speakTTSVoice("已发布求助信息,将为你通知其他车主")
|
||||
@@ -213,11 +211,11 @@ object SeekHelpManager {
|
||||
fun debugCancelSeek() {
|
||||
val seekRequest = SeekRequest(DeviceUtil.getSn(), 0)
|
||||
val param = mutableMapOf("data" to seekRequest.getJson())
|
||||
ShareControl.getInstance(context).mogoServiceApis.networkApi.create(ShareApiService::class.java, HttpConstant.getNetHost()).sendHelpSignal(param).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(object : SubscribeImpl<BaseData>(RequestOptions.create(context)) {
|
||||
ServiceApisManager.serviceApis.networkApi.create(ShareApiService::class.java, HttpConstant.getNetHost()).sendHelpSignal(param).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(object : SubscribeImpl<BaseData>(RequestOptions.create(context)) {
|
||||
override fun onSuccess(o: BaseData?) {
|
||||
super.onSuccess(o)
|
||||
// 接口请求成功,内部同步v2x状态,通知adas,改变自车图标
|
||||
ShareControl.getInstance(context).mogoServiceApis.statusManagerApi.setSeekHelping("ShareDialog", false)
|
||||
ServiceApisManager.serviceApis.statusManagerApi.setSeekHelping("ShareDialog", false)
|
||||
isSeekHelp = false
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.mogo.module.share.manager
|
||||
|
||||
import android.content.Context
|
||||
import com.alibaba.android.arouter.launcher.ARouter
|
||||
import com.mogo.service.IMogoServiceApis
|
||||
import com.mogo.service.MogoServicePaths
|
||||
|
||||
/**
|
||||
* 全局管理IMogoServiceApis
|
||||
*/
|
||||
object ServiceApisManager {
|
||||
lateinit var serviceApis: IMogoServiceApis
|
||||
|
||||
fun init(context: Context) {
|
||||
serviceApis = ARouter.getInstance().build(MogoServicePaths.PATH_SERVICE_APIS).navigation(context) as IMogoServiceApis
|
||||
}
|
||||
}
|
||||
@@ -11,7 +11,7 @@ import com.mogo.utils.logger.Logger
|
||||
*/
|
||||
object UploadHelper {
|
||||
fun upload(context:Context, type: String) {
|
||||
ShareControl.getInstance(context).mogoServiceApis.statusManagerApi.setUploadingStatus("CARD_TYPE_ROAD_CONDITION", true)
|
||||
ServiceApisManager.serviceApis.statusManagerApi.setUploadingStatus("CARD_TYPE_ROAD_CONDITION", true)
|
||||
Logger.d("UploadHelper", "upload ----> $type")
|
||||
val intent = Intent()
|
||||
intent.action = "com.zhidao.roadcondition.share"
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.mogo.service.module.IMogoRegisterCenter;
|
||||
import com.mogo.service.module.IMogoSearchManager;
|
||||
import com.mogo.service.module.IMogoSettingManager;
|
||||
import com.mogo.service.network.IMogoNetwork;
|
||||
import com.mogo.service.share.IMogoShareManager;
|
||||
import com.mogo.service.statusmanager.IMogoMsgCenter;
|
||||
import com.mogo.service.statusmanager.IMogoStatusManager;
|
||||
import com.mogo.service.strategy.IMogoRefreshStrategyController;
|
||||
@@ -194,4 +195,10 @@ public interface IMogoServiceApis extends IProvider {
|
||||
* @return
|
||||
*/
|
||||
IMogoMarkerService getMarkerService();
|
||||
|
||||
/**
|
||||
* 其他模块调用分享框的显示和隐藏
|
||||
* @return
|
||||
*/
|
||||
IMogoShareManager getShareManager();
|
||||
}
|
||||
|
||||
@@ -170,6 +170,7 @@ public class MogoServicePaths {
|
||||
/**
|
||||
* 顶部1/2屏管理
|
||||
*/
|
||||
@Deprecated
|
||||
public static final String PATH_EXTENSIONS_TOP_VIEW_MANAGER = "/topview/api";
|
||||
|
||||
/**
|
||||
@@ -177,4 +178,10 @@ public class MogoServicePaths {
|
||||
*/
|
||||
@Deprecated
|
||||
public static final String PATH_MARKER_SERVICE = "/mogomarker/api";
|
||||
|
||||
/**
|
||||
* 其他模块调用分享框
|
||||
*/
|
||||
@Deprecated
|
||||
public static final String PATH_SHARE = "/extensions/share";
|
||||
}
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.mogo.service.share;
|
||||
|
||||
import com.alibaba.android.arouter.facade.template.IProvider;
|
||||
|
||||
/**
|
||||
* 分享框管理接口
|
||||
* @author tongchenfei
|
||||
*/
|
||||
public interface IMogoShareManager extends IProvider {
|
||||
/**
|
||||
* 显示分享框
|
||||
*/
|
||||
void showShareDialog();
|
||||
|
||||
/**
|
||||
* 隐藏分享框
|
||||
*/
|
||||
void dismissShareDialog();
|
||||
}
|
||||
@@ -30,6 +30,7 @@ import com.mogo.service.module.IMogoRegisterCenter;
|
||||
import com.mogo.service.module.IMogoSearchManager;
|
||||
import com.mogo.service.module.IMogoSettingManager;
|
||||
import com.mogo.service.network.IMogoNetwork;
|
||||
import com.mogo.service.share.IMogoShareManager;
|
||||
import com.mogo.service.statusmanager.IMogoMsgCenter;
|
||||
import com.mogo.service.statusmanager.IMogoStatusManager;
|
||||
import com.mogo.service.strategy.IMogoRefreshStrategyController;
|
||||
@@ -171,7 +172,12 @@ public class MogoServiceApis implements IMogoServiceApis {
|
||||
return getApiInstance( IMogoMarkerService.class, MogoServicePaths.PATH_MARKER_SERVICE );
|
||||
}
|
||||
|
||||
private static < T extends IProvider > T getApiInstance( Class< T > clazz, String path ) {
|
||||
@Override
|
||||
public IMogoShareManager getShareManager() {
|
||||
return getApiInstance(IMogoShareManager.class,MogoServicePaths.PATH_SHARE);
|
||||
}
|
||||
|
||||
private static < T extends IProvider > T getApiInstance(Class< T > clazz, String path ) {
|
||||
T inst = SingletonsHolder.get( clazz );
|
||||
if ( inst == null ) {
|
||||
synchronized ( sLock ) {
|
||||
|
||||
Reference in New Issue
Block a user