Fixed bug number 10369.

This commit is contained in:
xiaojiazhu 2023-12-11 16:59:16 +08:00
parent ac74e6d5db
commit f7a938c374
7 changed files with 64 additions and 1 deletions

View File

@ -633,7 +633,26 @@ const int EMPTY_IMAGE = 0;
lv_obj_set_hidden(image_4g_scr_uiflowphoto, false);
lv_plugin_img_set_src(image_4g_scr_uiflowphoto, res[index]);
}
static void update_gps_status(void)
{
SF_GPS_STATUS_E status = sf_cardv_get_gps_status();
switch (status)
{
case SF_GPS_SEARCHING_START:
{
lv_obj_set_hidden(label_sim_scr_uiflowphoto, false);
lv_label_set_text(label_sim_scr_uiflowphoto, "GPS searching...");
break;
}
case SF_GPS_SEARCHING_STOP:
{
lv_obj_set_hidden(label_sim_scr_uiflowphoto, true);
break;
}
default:
break;
}
}
static void update_camera_message(void)
{
UIMenuStoreInfo *puiPara = sf_ui_para_get();
@ -854,6 +873,7 @@ static void update_icons(void)
update_wifi();
update_bluetooth();
update_camera_mode();
update_gps_status();
}
static void FlowPhoto_InitStartupFuncs(void)

View File

@ -357,6 +357,11 @@ void sf_set_module_sleep_flag(UINT8 flag);
UINT8 sf_get_module_sleep_flag(void);
int sf_app_while_flag(void);
void sf_set_sim_insert(INT32 sim);
#define GPS_SEARCHING_START 0
#define GPS_SEARCHING_STOP 1
#define GPS_SEARCHING_SUCCESSFUL 2
#define GPS_SEARCHING_FAILED 3
void sf_set_gps_status(const short status);
void sf_set_usb_init(int flag);
UINT32 sf_get_sim_insert(void);
int sf_get_signal_ready(void);

View File

@ -486,6 +486,7 @@ typedef enum sf_PARA_MESSAGE_TYPE_E
SF_PARA_CMD_SIMISINSERT = 0x1F06,
SF_PARA_CMD_ISESIM = 0x1F07,
SF_PARA_CMD_USB_INIT = 0x1F08,
SF_PARA_CMD_GPS_STATUS = 0X1F09,
}SF_PARA_MESSAGE_TYPE_E;
typedef enum sf_WIFI_MESSAGE_TYPE_E

View File

@ -2162,6 +2162,7 @@ SINT32 open_gps(const SINT32 utc)
{
//UIMenuStoreInfo *pCustomerParam = sf_app_ui_para_get();
//SINT32 s32ret = 0;
sf_set_gps_status(GPS_SEARCHING_START);
SF_PARA_TIME_S current_time = { 0, 0, 0, 0, 0, 0};
sf_get_ntp(utc, &current_time);
#define NTP_TIME_LENGTH 32
@ -2184,6 +2185,7 @@ int get_gps_location(void)
GpsLocation location;
memset(&location, 0, sizeof(GpsLocation));
location = gps_get_location();
sf_set_gps_status(GPS_SEARCHING_STOP);
if (strlen(location.latitude) > 0 && strlen(location.longitude) > 0)
{
LogInfo("Get gps location!\n");
@ -2193,8 +2195,10 @@ int get_gps_location(void)
strcpy(pCustomerParam->Latitude, location.latitude);
LogInfo("location.Longitude = %s\n", pCustomerParam->Longitude);
LogInfo("location.Latitude = %s\n", pCustomerParam->Latitude);
// sf_set_gps_status(GPS_SEARCHING_SUCCESSFUL);
return GPS_GET_SUCCEED;
}
// sf_set_gps_status(GPS_SEARCHING_FAILED);
return GPS_GET_FAILED;
}
void keep_get_gps_location(const SF_GPS_PARAM param)

View File

@ -1241,6 +1241,14 @@ void sf_set_sim_insert(INT32 sim)
simCardInsert = sim;
}
void sf_set_gps_status(const short status)
{
SF_MESSAGE_BUF_S stMessageBuf = {0};
stMessageBuf.arg2 = status;
stMessageBuf.arg1 = SF_PARA_CMD_GPS_STATUS;
stMessageBuf.cmdId = CMD_PARA;
sf_com_message_send_to_cardv(&stMessageBuf);
}
void sf_set_usb_init(int flag)
{
SF_MESSAGE_BUF_S stMessageBuf = {0};

View File

@ -23,6 +23,16 @@ typedef enum sfBLE_STATUS_E
SF_BLE_BUTT,
} SF_BLE_STATUS_E;
typedef enum sfGPS_STATUS_E
{
SF_GPS_SEARCHING_UNKNOW = -1,
SF_GPS_SEARCHING_START,
SF_GPS_SEARCHING_STOP,
SF_GPS_SEARCHING_SUCCESSFUL,
SF_GPS_SEARCHING_FAILED,
SF_GPS_SEARCHING_END,
} SF_GPS_STATUS_E;
typedef enum{
FILE_SENDING_GUI_START_SENDING = 0,
FILE_SENDING_GUI_STOP_SENDING,
@ -114,6 +124,8 @@ BOOL sf_is_movie_preview(void);
BOOL sf_is_cap_preview(void);
BOOL sf_is_preview(void);
short sf_cardv_get_cq_signal(void);
void sf_cardv_set_gps_status(const SF_GPS_STATUS_E status);
const SF_GPS_STATUS_E sf_cardv_get_gps_status(void);
void sf_cardv_4G_status_set(UINT8 status);
UINT8 sf_cardv_4G_status_get(void);
void sf_cardv_set_sim_insert(INT8 sim);

View File

@ -99,6 +99,7 @@ static SINT32 WifiSocket = 0;
static UINT8 UiparaFlag = 0;
static SF_BLE_STATUS_E BleStatus = SF_BLE_OK;
static UINT8 McuUpdateFlag = 0;
static SF_GPS_STATUS_E gGpsSearching = SF_GPS_SEARCHING_UNKNOW;
static SF_THREAD_S UpgradeTskParam =
{
@ -1526,6 +1527,15 @@ short sf_cardv_get_cq_signal(void)
{
return cq_Signal;
}
void sf_cardv_set_gps_status(const SF_GPS_STATUS_E status)
{
printf("sf_cardv_set_gps_status = %d\n", status);
gGpsSearching = status;
}
const SF_GPS_STATUS_E sf_cardv_get_gps_status(void)
{
return gGpsSearching;
}
/*************************************************
Function: sf_cardv_adc_value_get
@ -1765,6 +1775,9 @@ static SINT32 sf_cardv_proccess_cmd_para_update(SF_MESSAGE_BUF_S *pMessageBuf)
break;
case SF_PARA_CMD_USB_INIT:
sf_cardv_set_usb_init(pMessageBuf->arg2);
break;
case SF_PARA_CMD_GPS_STATUS:
sf_cardv_set_gps_status(pMessageBuf->arg2);
break;
default:
break;