事件上报逻辑开发

This commit is contained in:
tongchenfei
2020-05-15 10:37:40 +08:00
parent bd9af07fb8
commit 077e0e3a97
3 changed files with 24 additions and 7 deletions

View File

@@ -27,6 +27,7 @@ import com.mogo.service.statusmanager.IMogoStatusManager;
import com.mogo.service.statusmanager.StatusDescriptor;
import com.mogo.utils.logger.Logger;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.HashMap;
@@ -203,8 +204,19 @@ public class EntrancePresenter extends Presenter< EntranceView > implements IMog
if ( mIMogoAuthorizeModuleManager.needAuthorize( AUTHORIZE_TYPE_LAUNCHER_SHARE ) ) {
mIMogoAuthorizeModuleManager.invokeAuthorization( AUTHORIZE_TYPE_LAUNCHER_SHARE );
} else {
uploadRoadCondition();
Log.d( TAG, "mogoIntentListener 分享路况 唤醒 ----> " );
JSONObject jsonObject = null;
try {
jsonObject = new JSONObject( data );
String typeString = jsonObject.get( "obj" ).toString();
Logger.d(TAG, "mogiIntentListener 准备上报拥堵: " + typeString);
if("拥堵".equals(typeString)) {
uploadRoadCondition();
Log.d(TAG, "mogoIntentListener 上报拥堵 唤醒 ----> ");
}
} catch (JSONException e) {
e.printStackTrace();
}
}
} else if ( intentStr.equals( ExtensionsModuleConst.SHARE_DIALOG_CLOSE ) ) { //关闭分享框 唤醒
if ( mIMogoAuthorizeModuleManager.needAuthorize( AUTHORIZE_TYPE_LAUNCHER_SHARE ) ) {

View File

@@ -7,6 +7,7 @@ import com.mogo.module.share.constant.ShareConstants
import com.mogo.module.share.constant.ShareConstants.*
import com.mogo.module.share.manager.UploadHelper
import com.mogo.utils.logger.Logger
import org.json.JSONObject
/**
* 用于接收唤醒词指令,现在只接收 com.zhidao.speech.awake.notify 这一条广播
@@ -25,23 +26,27 @@ class ShareVoiceCmdReceiver : BroadcastReceiver() {
context.startService(seekHelp)
}
VOICE_CMD_GO_TO_SHARE ->{
when (intent.getStringExtra("ob") ?: "") {
val ob = JSONObject(intent.getStringExtra("data") ?: "").opt("ob")
Logger.d(TAG, "ob: $ob")
when (ob) {
"积水"->{
UploadHelper.upload(context, TYPE_STAGNANT_WATER)
}
"积冰"->{
UploadHelper.upload(context, TYPE_ROAD_ICY)
}
""->{
""->{
UploadHelper.upload(context, TYPE_DENSE_FOG)
}
"事故"->{
"交通事故"->{
UploadHelper.upload(context, TYPE_ACCIDENT)
}
}
}
VOICE_CMD_PUB_ROAD_CONDITION->{
if(intent.getStringExtra("ob")?:"" == "路况") {
val ob = JSONObject(intent.getStringExtra("data") ?: "").opt("obj")
Logger.d(TAG, "ob: $ob")
if(ob == "路况") {
// 上报实时路况
Logger.d(TAG, "分享框准备触发上报实时路况")
UploadHelper.upload(context, TYPE_REAL_TIME_TRAFFIC)

View File

@@ -12,7 +12,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)
Logger.d("UploadHelper", "upload ---->")
Logger.d("UploadHelper", "upload ----> $type")
val intent = Intent()
intent.action = "com.zhidao.roadcondition.share"
intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND)