null-annotate lib/ui/natives.dart (#18349)

diff --git a/lib/ui/natives.dart b/lib/ui/natives.dart
index d394e86..8c5a426 100644
--- a/lib/ui/natives.dart
+++ b/lib/ui/natives.dart
@@ -17,8 +17,8 @@
 }
 
 class _Logger {
-  static void _printString(String s) native 'Logger_PrintString';
-  static void _printDebugString(String s) native 'Logger_PrintDebugString';
+  static void _printString(String/*?*/ s) native 'Logger_PrintString';
+  static void _printDebugString(String/*?*/ s) native 'Logger_PrintDebugString';
 }
 
 // If we actually run on big endian machines, we'll need to do something smarter
@@ -68,7 +68,7 @@
 /// ```
 ///
 /// This function is only effective in debug and dynamic modes, and will throw in AOT mode.
-List<int> saveCompilationTrace() {
+List<int/*!*/>/*!*/ saveCompilationTrace() {
   final dynamic result = _saveCompilationTrace();
   if (result is Error)
     throw result;
@@ -79,11 +79,11 @@
 
 void _scheduleMicrotask(void callback()) native 'ScheduleMicrotask';
 
-int _getCallbackHandle(Function closure) native 'GetCallbackHandle';
-Function _getCallbackFromHandle(int handle) native 'GetCallbackFromHandle';
+int/*?*/ _getCallbackHandle(Function closure) native 'GetCallbackHandle';
+Function/*?*/ _getCallbackFromHandle(int handle) native 'GetCallbackFromHandle';
 
 // Required for gen_snapshot to work correctly.
-int _isolateId; // ignore: unused_element
+int/*?*/ _isolateId; // ignore: unused_element
 
 @pragma('vm:entry-point')
 Function _getPrintClosure() => _print;  // ignore: unused_element
diff --git a/lib/web_ui/lib/src/ui/natives.dart b/lib/web_ui/lib/src/ui/natives.dart
index eabef43..1cdcb68 100644
--- a/lib/web_ui/lib/src/ui/natives.dart
+++ b/lib/web_ui/lib/src/ui/natives.dart
@@ -16,10 +16,10 @@
 }
 
 class _Logger {
-  static void _printString(String s) {
+  static void _printString(String/*?*/ s) {
     print(s);
   }
-  static void _printDebugString(String s) {
+  static void _printDebugString(String/*?*/ s) {
     html.window.console.error(s);
   }
 }
@@ -40,6 +40,6 @@
 /// ```
 ///
 /// This function is only effective in debug and dynamic modes, and will throw in AOT mode.
-List<int> saveCompilationTrace() {
+List<int/*!*/>/*!*/ saveCompilationTrace() {
   throw UnimplementedError();
 }