iBOOL i51PortCreateFrontEnd () { // author : Jelo // since : 2011.10.19 // (C) PKIG Tech. Co., Ltd. i51AdeOsLog(i51_LOG_SC, "PORT : i51PortCreateFrontEnd , S"); i51EntryScreen(); i51SetInputNotify(); if(l_InI51){ i51AdeOsLog(i51_LOG_SC, "PORT : i51PortCreateFrontEnd , resume notify"); #if defined(__MMI_BACKGROUND_CALL__) if(srv_ucm_is_background_call()) //if(srv_ucm_query_call_count(SRV_UCM_ACTIVE_STATE, SRV_UCM_CALL_TYPE_ALL, NULL) != 0 ) { i51AdeOsLog(i51_LOG_SC, "PORT : i51PortCreateFrontEnd , Have background dial"); i51KernelExit( i51_KERNEL_EXIT_DAP ); return iFALSE; } #endif i51KernelSendEvent(i51_MSG_RESUME, 0); }else i51AdeOsLog(i51_LOG_SC, "PORT : i51PortCreateFrontEnd , fontend app will run"); l_InI51 = iTRUE; i51AdeOsLog(i51_LOG_SC, "PORT : i51PortCreateFrontEnd , E"); return iTRUE ; }
/***************************************************************************** * FUNCTION * mmi_rmgr_format_notify_timeout_hdlr * DESCRIPTION * Post formatting notification handler * PARAMETERS * void * para(?) [IN] Additional parameter * notify_flag(?) [IN] MMI_FMGR_NOTIFY_DRV_POST_FORMAT * RETURNS * MMI_BOOL: always return true *****************************************************************************/ void mmi_rmgr_format_notify_timeout_hdlr(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ MMI_BOOL block_screen = MMI_FALSE; mmi_id g_id; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ #ifdef __MMI_UCM__ if (srv_ucm_query_call_count(SRV_UCM_CALL_STATE_ALL, SRV_UCM_CALL_TYPE_NO_CSD, NULL) > 0) { block_screen = MMI_TRUE; #ifdef __MMI_BACKGROUND_CALL__ if (srv_ucm_is_background_call()) { block_screen = MMI_FALSE; } #endif /* __MMI_BACKGROUND_CALL__ */ } if (block_screen) { return; } #endif /* __MMI_UCM__ */ mmi_frm_nmgr_notify_by_app(MMI_SCENARIO_ID_DEFAULT, MMI_EVENT_NON_TONE, mmi_rmgr_format_popup_handler, NULL); //mmi_rmgr_list_ro_entry_delete(); }
MMI_BOOL CALLCC UcmService::is_background_call(void) { //MMI_PRINT(MOD_MRE, TRACE_GROUP_1, "[MRE] UcmService::is_background_call"); #ifdef __MMI_BACKGROUND_CALL__ return srv_ucm_is_background_call(); #else return MMI_FALSE; #endif }
/***************************************************************************** * FUNCTION * mmi_fmsr_power_on * DESCRIPTION * Power on the FM radio and playing * PARAMETERS * void * RETURNS * void *****************************************************************************/ void mmi_fmsr_power_on(void) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ if (g_fmsr_cntx.rec.state != FMSR_STATE_IDLE) { /* Enter error screen */ return; } #ifdef __MMI_BACKGROUND_CALL__ if (srv_ucm_is_background_call()) { return; } #endif /* __MMI_BACKGROUND_CALL__ */ if (!mdi_check_device_ownership()) { /* Enter error screen */ return; } else { /* Stop all aduo and begin to record */ mdi_audio_stop_all(); mdi_audio_set_volume(AUD_VOLUME_FMR, g_fmsr_cntx.rec.volume); mdi_fmr_power_on_with_path( MDI_DEVICE_SPEAKER_BOTH /* MDI_DEVICE_SPEAKER2 */ , (mdi_ext_callback) mmi_fmsr_mdi_callback, NULL); mdi_fmr_set_freq(g_fmsr_cntx.rec.freqency); g_fmsr_cntx.rec.state = FMSR_STATE_READY; } }
int i51EntryDo(void) { // author : Miki // since : 2011.8.30 // (C) PKIG Tech. Co., Ltd. #if defined(__MMI_BACKGROUND_CALL__) if(srv_ucm_is_background_call()) //if( srv_ucm_query_call_count(SRV_UCM_ACTIVE_STATE, SRV_UCM_CALL_TYPE_ALL, NULL) != 0 ) { //需要先停止打电话! #ifdef __I51_APP_LANG_EN__ U16 s2[]= L"Please hang up the phone!"; #else U16 s2[9+1] = { 0x9700,0x8981,0x5148,0x505c,0x6b62,0x6253,0x7535,0x8bdd,0xff01,0x0000}; #endif DisplayPopup((PU8)s2, IMG_GLOBAL_WARNING, 0, 3000, 0); return 1; } #endif if(mdi_audio_get_state() == MDI_AUDIO_PLAY) // if( mdi_audio_is_playing(MDI_AUDIO_PLAY_ANY) ) { //需要先关闭音乐播放程序! #ifdef __I51_APP_LANG_EN__ U16 s1[]= L"Please Stop the Music !"; #else U16 s1[12+1] = { 0x9700,0x8981,0x5148,0x5173,0x95ed,0x97f3,0x4e50,0x64ad,0x653e,0x7a0b,0x5e8f,0xff01,0x0000}; #endif DisplayPopup((PU8)s1, IMG_GLOBAL_WARNING, 0, 3000, 0); return 1 ; } i51AdeOsLog( 0 ,"PORT : i51EntryDo , MEM left:%d",i51AdeOsGetTotallMemoryLeft()); return 0; }
/***************************************************************************** * FUNCTION * mmi_fmsr_start_record * DESCRIPTION * Start to record FM radio * PARAMETERS * filename [IN] The record file name * format [IN] The record file format * quality [IN] The record file quality * RETURNS * void *****************************************************************************/ BOOL mmi_fmsr_start_record(UI_string_type filename, U8 format, U8 quality) { /*----------------------------------------------------------------*/ /* Local Variables */ /*----------------------------------------------------------------*/ U8 file_format; mdi_result result; #ifdef __DRM_SUPPORT__ { FS_HANDLE handle; BOOL is_permitted = FALSE; /*----------------------------------------------------------------*/ /* Code Body */ /*----------------------------------------------------------------*/ if ((handle = DRM_open_file((PU16) filename, FS_READ_ONLY, DRM_PERMISSION_NONE)) >= FS_NO_ERROR) { if (DRM_get_object_method(handle, NULL) == DRM_METHOD_NONE) { is_permitted = TRUE; } DRM_close_file(handle); } else if (handle < -1) /* file open error. but not DRM related problem */ { is_permitted = TRUE; } if (!is_permitted) { mmi_fmsr_record_error_hdlr(DRM_NOT_PERMIT_TO_APPEND); return FALSE; } } #endif /* __DRM_SUPPORT__ */ #ifdef __MMI_BACKGROUND_CALL__ if (srv_ucm_is_background_call()) { return FALSE; } #endif /* __MMI_BACKGROUND_CALL__ */ switch (format) { #if !defined(__FMRADIO_I2S_SUPPORT__) || defined(__I2S_AMR_RECORD__) case FMSR_FORMAT_AMR: file_format = MEDIA_AMR; break; #endif #if !defined(__FMRADIO_I2S_SUPPORT__) || defined(__I2S_WAV_RECORD__) case FMSR_FORMAT_WAV: file_format = MEDIA_WAV_DVI_ADPCM; break; #endif #if !defined(__FMRADIO_I2S_SUPPORT__) || defined(__I2S_AWB_RECORD__) #if defined(AMRWB_ENCODE) && defined(AMRWB_DECODE) case FMSR_FORMAT_AWB: file_format = MEDIA_AMR_WB; break; #endif #endif /* defined(AMRWB_ENCODE) && defined(AMRWB_DECODE) */ #if defined(__I2S_DAF_RECORD__) case FMSR_FORMAT_DAF: file_format = MDI_FORMAT_DAF; break; #endif default: file_format = MEDIA_AMR; break; } result = mdi_fmr_start_record(filename, file_format, quality); if (result == MDI_AUDIO_SUCCESS) { g_fmsr_cntx.rec.is_start_duration = TRUE; g_fmsr_cntx.rec.state = FMSR_STATE_RECORD; return TRUE; } /* Record request fail, need to stop FM radio playing */ else if (g_fmsr_cntx.rec.state == FMSR_STATE_READY) { /* Do not show message in the FM radio stop callback. */ g_fmsr_cntx.rec.is_show_msg = FALSE; mmi_fmsr_power_off(); } /* Show error message for the error cause */ g_fmsr_cntx.rec.is_show_msg = TRUE; mmi_fmsr_record_error_hdlr(result); return FALSE; }