Repository: flutter
Issue: [Android 12] Textfield `onchanged` callback triggered twice on emulator
Labels: a: text input,platform-android,framework,e: OS-version specific,has reproducible steps,P2,found in release: 2.5,found in release: 2.6,team-android,triaged-android

## Steps to Reproduce

1. Run this code on Android Emulator:
```dart
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        home: Scaffold(
      body: Center(
        child: TextField(
          onChanged: callback,
        ),
      ),
    ));
  }

  void callback(String s) {
    print(s);
  }
}
```
2. Start typing in the textfield.

**Expected results:** <!-- what did you want to see? -->

The callback method should be called only once on value change.

**Actual results:** <!-- what did you see? -->

The callback method is called twice when typing from the keyboard and not the soft keyboard.

https://user-images.githubusercontent.com/77046231/139575604-b1a0daee-d785-483c-a675-daac5e790236.mp4

[Video on youtube, if above not playable](https://youtu.be/lyhEcSRnbfk)

When typing from the soft keyboard, the callback method is called only once, but twice when typing from physical keyboard.
<details>

Android Studio Vesion: 2020.3.1 Patch 3
Android Emulator Version: 30.9.5
System Image: Android 12 x86_64

<details>

<!-- Finally, paste the output of running `flutter doctor -v` here. -->

```
[✓] Flutter (Channel stable, 2.5.3, on Pop!_OS 21.04 5.13.0-7620-generic, locale
    en_US.UTF-8)
    • Flutter version 2.5.3 at /home/mayank-pop/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 18116933e7 (2 weeks ago), 2021-10-15 10:46:35 -0700
    • Engine revision d3ea636dc5
    • Dart version 2.14.4

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /home/mayank-pop/Android/Sdk
    • Platform android-31, build-tools 31.0.0
    • Java binary at: /opt/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at google-chrome

[✓] Linux toolchain - develop for Linux desktop
    • Ubuntu clang version 12.0.0-3ubuntu1~21.04.2
    • cmake version 3.18.4
    • ninja version 1.10.1
    • pkg-config version 0.29.2

[✓] Android Studio (version 2020.3)
    • Android Studio at /opt/android-studio
    • Flutter plugin version 61.2.2
    • Dart plugin version 203.8430
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)

[✓] VS Code (version 1.61.2)
    • VS Code at /usr/share/code
    • Flutter extension version 3.27.0

[✓] Connected device (3 available)
    • sdk gphone64 x86 64 (mobile) • emulator-5554 • android-x64    • Android 12
      (API 31) (emulator)
    • Linux (desktop)              • linux         • linux-x64      • Pop!_OS
      21.04 5.13.0-7620-generic
    • Chrome (web)                 • chrome        • web-javascript • Google
      Chrome 95.0.4638.69

• No issues found!

```

</details>