Android : Not able to get Second time Incoming Dynamic screen android

on Sunday, August 3, 2014


i have write code for dynamic screen on Incoming call/ Missed call/ Received call. Now its run fine first time when Incomingcall- call dynamic screen UNLOCK_HUD.CLASS, MissedCall- call dynamic screen MISSEDCALL.CLASS, After cut Received call open Dynamic screen of CALLLOG.CLASS.




Now when i cut the received call, Than after not call any of the screen. Means Before Received call All the dynamic screen is run fine.



switch (state) {
case TelephonyManager.CALL_STATE_IDLE:

Log.v("idle state", "CALL_STATE_IDLE");
// CALL_STATE_IDLE;

if(ring == true && callReceived == true && CheckMissCall.isReject == true)
{
Intent inter = new Intent(c, callLog.class);
inter.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
c.startActivity(inter);
}
if (ring == true && callReceived == false && CheckMissCall.isRunning== false) {

Log.v("missed call", "Missed call from : " + incomingNumber);
if(CheckMissCall.isShown)
{
c.stopService(new Intent(c, Unlock_hud.class));

}
flag = true;
if (prefs.getBoolean("main_state", true))
{
Intent inter = new Intent(c, MissCall.class);
inter.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
inter.putExtra("CellNumber", incomingNumber);
c.startActivity(inter);
}
}
break;


case TelephonyManager.CALL_STATE_OFFHOOK:
// CALL_STATE_OFFHOOK;
callReceived = true;
Log.v("call received", "CALL_STATE_OFFHOOK " + incomingNumber);
break;


case TelephonyManager.CALL_STATE_RINGING:
ring = true;

// CALL_STATE_RINGING
Log.v("call ringing", "CALL_STATE_RINGING " + incomingNumber);
Log.d("flags", "flags: " + flag);
if (flag) {

//cut = true;
//flag = false;
CheckMissCall call = new CheckMissCall(c);
call.setName(incomingNumber);
call.setNumber4Sms(incomingNumber);
call.setContactPhoto();

Log.d("main", "state ringing");
prefs = PreferenceManager.getDefaultSharedPreferences(c);

if (!prefs.getBoolean("main_state", false))
{

return;
}
if (CheckMissCall.isRunning) {

return;
}
else {
Log.d("main", "EEEEEEEEEEEEEEEE: Unlock hud");
Intent in = new Intent(c, Unlock_hud.class);
in.setFlags(Intent.FLAG_ACTIVITY_PREVIOUS_IS_TOP);
c.startService(in);

// c.stopService(new Intent(c, Unlock_hud.class));
}
}
break;
}

0 comments:

Post a Comment