You could try something like a current flow detection device, or this one. No need for the value of the current, just whether it is on or off should be sufficient. Then using that logical on/off determination show the activity in the app with the Blynk.virtualWrite()
as @Dmitriy mentioned.
I have done something similar (without the active hardware detection) using an app slider and a single physical button/switch combo to control the brightness of an LED
#define WLED 6 // Set Physical LED pin.
WidgetLED WHT(V5); // Set virtual White LED widget
//===== White LED slider widget - BLYNK Function =====
BLYNK_WRITE(V4) // Runs everytime White LED slider widget (on V4) is "physically" moved.
{
brightness = param.asInt(); // Get slider value.
WHT.setValue(brightness); // Send slider value to virtual LED.
analogWrite(WLED, brightness); // Send slider value to real LED.
}
//===== CodeShield button control of White LED =====
void whiteLED() // This function checks buttons status and updates White LED and slider (frequency dependent on timer).
{
if (digitalRead(bUutton) == HIGH and digitalRead(sWitch) == HIGH and brightness < 255) { // Only do something if button pressed and brightness counter in range.
brightness += 50; // Increment counter by 50
Blynk.virtualWrite(V4, constrain(brightness, 0, 255)); // Send constrained (within 0-255) feedback to Slider Widget.
WHT.setValue(constrain(brightness, 0, 255)); // Send constrained feedback to virtual LED.
analogWrite(WLED, constrain(brightness, 0, 255)); // Send constrained feedback to LED.
}
else if (digitalRead(bUutton) == HIGH and digitalRead(sWitch) == LOW and brightness > 0) { // Only do something if button pressed and brightness counter in range.
brightness -= 50; // Decrement counter by 50
Blynk.virtualWrite(V4, constrain(brightness, 0, 255)); // Send constrained feedback to Slider Widget.
WHT.setValue(constrain(brightness, 0, 255)); // Send constrained feedback to virtual LED.
analogWrite(WLED, constrain(brightness, 0, 255)); // Send constrainedfeedback to real LED.
}
else { // Nothing happening here... move along :)
}
}