// Detect SIM card
Sy_sms_state soyou_find_simcard (void)
{
Soyou_log (soyou_find_simcard, ("sim1 remove = % d, valid = % d sim2 remove = % d, valid = % d", login (), mmi_bootup_is_sim_valid ()));
If (! (Mmi_frm_sms_get_sms_list_size (0 )! = 0 xFFFF) & mmi_frm_sms_check_action_pending () = false ))
{
Return sy_sim_busy; // The system is busy.
}
# Ifdef _ mmi_dual_sim_master __
Soyou_log (soyou_find_simcard, ("sim1 remove = % d, valid = % d sim2 remove = % d, valid = % d", login (), mmi_bootup_is_sim2_valid ()));
If (mmi_bootup_is_sim_removed () = true) & (mmi_bootup_is_sim2_removed () = true ))
{
Return sy_sim_nosim; // No SIM card found
}
If (mmi_bootup_is_sim_valid () = false) & (mmi_bootup_is_sim2_valid () = false ))
{
Return sy_sim_fail; // invalid card
}
If (mmi_bootup_is_sim_valid () = false) & (mmi_bootup_is_sim2_removed () = true ))
{
Return sy_sim_fail; // invalid card
}
If (mmi_bootup_is_sim_removed () = true) & (mmi_bootup_is_sim2_valid () = false ))
{
Return sy_sim_fail; // invalid card
}
# Else
If (mmi_bootup_is_sim_removed () = true ))
{
Return sy_sim_nosim; // No SIM card found
}
If (mmi_bootup_is_sim_valid () = false)
{
Return sy_sim_fail; // the SIM card is invalid.
}
# Endif
Return sy_sim_normal;
}
This article from the csdn blog, reproduced please indicate the source: http://blog.csdn.net/toonny1985/archive/2009/12/02/4926553.aspx