Upgrade to the new analyzer to makes pub bots happy.

I see the following errors locally.
But it does not seem to be analyzer related.

ERROR: The argument type '(String) → void' cannot be assigned to the parameter type 'Parser(dynamic) → String'. ([linter] tool/grind.dart:15)
ERROR: The argument type '(String) → void' cannot be assigned to the parameter type 'Parser(dynamic) → String'. ([linter] tool/grind.dart:21)

R=brianwilkerson@google.com, pquitslund@google.com
BUG=

Review URL: https://codereview.chromium.org//2239073006 .
diff --git a/lib/src/analysis.dart b/lib/src/analysis.dart
index 7927806..ca048a5 100644
--- a/lib/src/analysis.dart
+++ b/lib/src/analysis.dart
@@ -14,10 +14,10 @@
 import 'package:analyzer/source/package_map_provider.dart';
 import 'package:analyzer/source/package_map_resolver.dart';
 import 'package:analyzer/source/pub_package_map_provider.dart';
+import 'package:analyzer/src/dart/sdk/sdk.dart';
 import 'package:analyzer/src/generated/engine.dart';
 import 'package:analyzer/src/generated/java_io.dart';
 import 'package:analyzer/src/generated/sdk.dart';
-import 'package:analyzer/src/generated/sdk_io.dart';
 import 'package:analyzer/src/generated/source.dart';
 import 'package:analyzer/src/generated/source_io.dart';
 import 'package:analyzer/src/services/lint.dart';
@@ -72,7 +72,8 @@
   List<UriResolver> get resolvers {
     DartSdk sdk = options.useMockSdk
         ? new MockSdk()
-        : new DirectoryBasedDartSdk(new JavaFile(sdkDir));
+        : new FolderBasedDartSdk(PhysicalResourceProvider.INSTANCE,
+            PhysicalResourceProvider.INSTANCE.getFolder(sdkDir));
 
     List<UriResolver> resolvers = [new DartUriResolver(sdk)];
 
diff --git a/lib/src/sdk.dart b/lib/src/sdk.dart
index 2c17d21..2904637 100644
--- a/lib/src/sdk.dart
+++ b/lib/src/sdk.dart
@@ -14,6 +14,7 @@
 import 'package:analyzer/src/generated/sdk.dart' show DartSdk, SdkLibrary;
 import 'package:analyzer/src/generated/source.dart'
     show DartUriResolver, Source, SourceFactory;
+import 'package:analyzer/src/summary/idl.dart';
 
 /// Mock SDK for testing purposes.
 class MockSdk implements DartSdk {
@@ -291,6 +292,9 @@
   }
 
   @override
+  PackageBundle getLinkedBundle() => null;
+
+  @override
   SdkLibrary getSdkLibrary(String dartUri) {
     // getSdkLibrary() is only used to determine whether a library is internal
     // to the SDK.  The mock SDK doesn't have any internals, so it's safe to
diff --git a/pubspec.yaml b/pubspec.yaml
index 5e18cfa..100ee37 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,12 +1,12 @@
 name: linter
-version: 0.1.23
+version: 0.1.24
 author: Dart Team <misc@dartlang.org>
 description: Style linter for Dart.
 homepage: https://github.com/dart-lang/linter
 environment:
   sdk: '>=1.12.0 <2.0.0'
 dependencies:
-  analyzer: ^0.27.3-alpha.4
+  analyzer: ^0.28.0-alpha.0
   args: '>=0.12.1 <0.14.0'
   cli_util: ^0.0.1
   glob: ^1.0.3