Issue 1:
Exception

══╡ EXCEPTION CAUGHT BY SCHEDULER LIBRARY ╞═════════════════════════════════════════════════════════
The following assertion was thrown during a scheduler callback:
Child with id 36 is invisible and should not be added to tree.
'package:flutter/src/semantics/semantics.dart': Failed assertion: line 370 pos 16:
'!child.isInvisible'

Either the assertion indicates an error in the framework itself, or we should provide substantially
more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
https://github.com/flutter/flutter/issues/new

When the exception was thrown, this was the stack:
════════════════════════════════════════════════════════════════════════════════════════════════════

flutter analyze

Analyzing /Users/hao/Documents/flutter_proj/shop...
No issues found!
Ran in 5.8s

Flutter Doctor

[✓] Flutter (on Mac OS X 10.13.1 17B1003, locale zh-Hans-CN, channel alpha)
• Flutter at /Users/hao/Documents/flutter
• Framework revision d957c8f040 (3 days ago), 2017-11-30 13:29:59 -0800
• Engine revision 77d8acb9be
• Tools Dart version 1.25.0-dev.11.0
• Engine Dart version 2.0.0-dev.9.0

[✓] Android toolchain - develop for Android devices (Android SDK 25.0.3)
• Android SDK at /Users/hao/Library/Android/sdk
• Unable to locate Android NDK.

• Unable to locate compiler in Android NDK.

• Platform android-25, build-tools 25.0.3
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)

[✓] iOS toolchain - develop for iOS devices (Xcode 9.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 9.1, Build version 9B55
• ios-deploy 1.9.2
• CocoaPods version 1.3.1

[✓] Android Studio (version 2.3)
• Android Studio at /Applications/Android Studio.app/Contents
• Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)

[✓] Connected devices
• iPhone 6s • AB7E1A1A-2F6B-469E-BA9F-BFAFA8C9A288 • ios • iOS 11.1 (simulator)

What does this exception mean?

Issue 2:
Steps to Reproduce

Set up two string-based platform message channels between Flutter and Android, with Flutter sending on one channel and Android sending on the other. Send replies on both sides, and configure reply handlers on both sides.

If you send or reply null or '' from Flutter, it is received as '' on the Android platform.

If you send or reply null or '' from Android, it is received as null in the Flutter app.

I would have expected null and the empty string to be communicated faithfully. And, barring that, the behavior to be independent of the direction of communication.

Flutter Doctor

$ flutter doctor
[✓] Flutter (on Linux, channel master)
• Flutter at /usr/local/google/home/mravn/github/flutter
• Framework revision a73df87986 (4 hours ago), 2017-02-28 10:51:52
• Engine revision 335daf1930
• Tools Dart version 1.23.0-dev.0.0

[✓] Android toolchain - develop for Android devices (Android SDK 25.0.2)
• Android SDK at /usr/local/google/home/mravn/Android/Sdk
• Platform android-25, build-tools 25.0.2
• OpenJDK Runtime Environment (build 1.8.0_112-google-v7-146844476-143772575)

[✓] Android Studio (version 2.2)
• Android Studio at /opt/android-studio-with-blaze-2.2
• Gradle version 2.14.1

[✓] Android Studio (version 2.2)
• Android Studio at /opt/android-studio-2.2
• Gradle version 2.14.1

[✓] Android Studio (version 2.1)
• Android Studio at /opt/android-studio-2.1
• Gradle version 2.14.1

[✓] Android Studio (version unknown)
• Android Studio at /opt/android-studio-stable
• android-studio-dir = /opt/android-studio-stable
• Gradle version 2.14.1

[✓] Gradle (2.14.1)
• gradle-dir = /opt/android-studio-stable/gradle/gradle-2.14.1
• Consider removing the gradle-dir setting to use Gradle from Android Studio.

[✓] IntelliJ IDEA Community Edition (version 2016.1)
• Dart plugin version 145.971.7
• Flutter plugin version 0.1.1

[✓] IntelliJ IDEA Community Edition (version 2016.2)
• Dart plugin version 162.2485
• Flutter plugin version 0.1.3

[✓] IntelliJ IDEA Ultimate Edition (version 2016.3)
• Dart plugin version 163.13137
• Flutter plugin version 0.1.11

[✓] IntelliJ IDEA Ultimate Edition (version 2016.2)
• Dart plugin version 162.2924
• Flutter plugin version 0.1.8.1

[✓] Connected devices
• Nexus 5X • 00bff34682e4b2ab • android-arm • Android 7.1.1 (API 25)