BERLIN -- Jamie Vardy scored his first England goal two minutes after coming on as a substitute and Eric Dier scored in injury time to beat Germany 3-2 and preserve the team's unbeaten record in Berlin on Saturday.
Vardy, who came on in the 72nd minute, produced an audacious flick with his right heel behind his left leg to send Nathaniel Clyne's cross inside the near post to equalize, and Dier clinched the winner with a header in the first minute of injury time.
Toni Kroos opened the scoring just before halftime and Mario Gomez made it 2-0 to Germany just after with his first international goal since Euro 2012, but Harry Kane sparked the comeback four minutes later with a fine turn and shot inside the far post.
More from FoxSports
The otherwise impressive Dele Alli looked like he missed the chance to win it for England when he fired over with the goal at his mercy with minutes remaining, only for Dier to spare Alli's blushes.
England has won six and drawn three of the nine games against Germany played in Berlin.
With regular captain Wayne Rooney out with a knee injury, England coach Roy Hodgson turned to Premier League top-scorer Kane to lead his attack, leaving Vardy -- who Germany coach Joachim Loew called "spectacular" -- on the bench.
Danny Rose made his debut at left back, and Gary Cahill captained the side for the second time in Rooney's absence. Defender Jonathan Tah came on for the second half to make his Germany debut.
The visitors in no way appeared overawed by the 71,000-crowd at the sold-out Olympiastadion, though they were fortunate Gomez had a goal ruled out for offside after he combined brilliantly with Sami Khedira and slotted the ball inside the far post. The linesman's flag was very late, and TV replays showed Gomez was in line with the last defender.
Germany threatened only intermittently and looked like cantering to the break until Kroos broke the deadlock with a thunderbolt. Nobody closed down the midfielder, who took several touches forward before unleashing a powerful curving strike inside the left post.
England goalkeeper Jack Butland injured himself in the lead-up and had to be carried off before the game resumed.
Germany goalkeeper Manuel Neuer wasn't really tested until the 52nd, when Alli drew a smart save with a fierce strike, before Jordan Henderson had the next effort deflected over.
Gomez then scored with a perfect header inside the right post from Khedira's floated cross.
It was as good as it got for the World Cup winners, with Kane then sparking a stirring comeback.
It was Germany's first match since the 2-0 defeat to France in Paris on Nov. 13, a game overshadowed by the attacks outside the stadium and across the city that killed 130 people. The game against the Netherlands in Hannover four days later was called off due to the threat of an attack.
Some 1,500 police officers were on duty, around 400 of whom were drafted in from other federal states. Security was tight with tents erected so supporters and workers at the game could be searched, scanned, and screened beforehand. A police background check was compulsory for workers. Sniffer dogs checked the area around the stadium for explosives two hours before kickoff.
Elsewhere, Poland routed Finland 5-0 in Warsaw, Hungary drew with Croatia 1-1, and Kazakhstan won in Azerbaijan 1-0.
Russia cruised past Lithuania 3-0 in Moscow in its last home game before Euro 2016.
Fyodor Smolov opened the scoring before the break. Russia record goal-scorer Alexander Kerzhakov set up 19-year-old Alexander Golovin for a powerful volley in the second half, some 10 minutes before Denis Glushakov rounded it off with a header from a corner.
Brazilian-born goalkeeper Guilherme came on for the second half to become the first naturalized foreigner to play for Russia.
In a match between two Euro 2016 contenders, Austria scored two early goals to defeat Albania 2-1 in Vienna. Striker Marc Janko and winger Martin Harnik took advantage of defensive mistakes early before Albania reduced the deficit through defender Ermir Lenjani after halftime.