# Below is a list of Flutter team members who are suggested reviewers
# for contributions to plugins in this repository.
#
# These names are just suggestions. It is fine to have your changes
# reviewed by someone else.

packages/android_alarm_manager/**              @bkonyi
packages/android_intent/**                     @mklim @matthew-carroll
packages/battery/**                            @amirh @matthew-carroll
packages/camera/**                             @bparrishMines
packages/connectivity/**                       @cyanglaz @matthew-carroll
packages/device_info/**                        @matthew-carroll
packages/espresso/**                           @collinjackson @adazh
packages/google_maps_flutter/**                @cyanglaz
packages/google_sign_in/**                     @cyanglaz @mehmetf
packages/image_picker/**                       @cyanglaz
packages/integration_test/**                   @dnfield
packages/in_app_purchase/**                    @mklim @cyanglaz @LHLL
packages/ios_platform_images/**                @gaaclarke
packages/package_info/**                       @cyanglaz @matthew-carroll
packages/path_provider/**                      @matthew-carroll
packages/shared_preferences/**                 @matthew-carroll
packages/url_launcher/**                       @mklim
packages/video_player/**                       @iskakaushik @cyanglaz
packages/webview_flutter/**                    @amirh
