Flutter-permission-handler: Cannot build on android

Created on 24 Apr 2021  路  3Comments  路  Source: Baseflow/flutter-permission-handler

馃悰 Bug Report

When I try to run it on Android emulator using android studio the build fails with this error:


Summary Goes Here

Launching lib/main.dart on sdk gphone x86 in debug mode...
Running Gradle task 'assembleDebug'...
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core-1.0.4/android/src/main/java/io/flutter/plugins/firebase/core/FlutterFirebaseCorePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-1.0.6/android/src/main/java/io/flutter/plugins/firebase/firestore/FlutterFirebaseFirestorePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-1.0.6/android/src/main/java/io/flutter/plugins/firebase/firestore/streamhandler/TransactionStreamHandler.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/cloud_functions-1.0.4/android/src/main/java/io/flutter/plugins/firebase/functions/FlutterFirebaseFunctionsPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/device_id-0.2.0/android/src/main/java/com/notrait/deviceid/DeviceIdPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_analytics-8.0.1/android/src/main/java/io/flutter/plugins/firebaseanalytics/FirebaseAnalyticsPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_analytics-8.0.1/android/src/main/java/io/flutter/plugins/firebaseanalytics/FirebaseAnalyticsPlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth-1.1.1/android/src/main/java/io/flutter/plugins/firebase/auth/FlutterFirebaseAuthPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_crashlytics-2.0.1/android/src/main/java/io/flutter/plugins/firebase/crashlytics/FlutterFirebaseCrashlyticsPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/file_picker-3.0.1/android/src/main/java/com/mr/flutter/plugin/filepicker/FilePickerPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_performance-0.7.0+1/android/src/main/java/io/flutter/plugins/firebaseperformance/FirebasePerformancePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_remote_config-0.10.0-dev.1/android/src/main/java/io/flutter/plugins/firebase/firebaseremoteconfig/FirebaseRemoteConfigPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_storage-8.0.4/android/src/main/java/io/flutter/plugins/firebase/storage/FlutterFirebaseStoragePlugin.java:38: warning: [deprecation] Registrar in PluginRegistry has been deprecated
  public static void registerWith(PluginRegistry.Registrar registrar) {
                                                ^
1 warning
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_app_badger-1.2.0/android/src/main/java/fr/g123k/flutterappbadger/FlutterAppBadgerPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_secure_storage-4.1.0/android/src/main/java/com/it_nomads/fluttersecurestorage/FlutterSecureStoragePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_sound_lite-8.1.1/android/src/main/java/com/dooboolab/fluttersound/FlutterSound.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/geocoder-0.2.1/android/src/main/java/com/aloisdeniel/geocoder/GeocoderPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in-5.0.2/android/src/main/java/io/flutter/plugins/googlesignin/GoogleSignInPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/image_jpeg-1.1.1/android/src/main/java/com/yangyxd/imagejpeg/ImageJpegPlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/image_jpeg-1.1.1/android/src/main/java/com/yangyxd/imagejpeg/ImageJpegPlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:54: error: cannot find symbol
            status = Environment.isExternalStorageManager()
                                ^
  symbol:   method isExternalStorageManager()
  location: class Environment
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:218: error: cannot find symbol
                    if (permission == PermissionConstants.PERMISSION_GROUP_MANAGE_EXTERNAL_STORAGE && Build.VERSION.SDK_INT < Build.VERSION_CODES.R) {
                                                                                          ^
  symbol:   variable R
  location: class VERSION_CODES
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:232: error: cannot find symbol
            } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R && permission == PermissionConstants.PERMISSION_GROUP_MANAGE_EXTERNAL_STORAGE) {
                                                                   ^
  symbol:   variable R
  location: class VERSION_CODES
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:234: error: cannot find symbol
                        Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION,
                                ^
  symbol:   variable ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION
  location: class Settings
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:293: error: cannot find symbol
                if (Build.VERSION.SDK_INT < Build.VERSION_CODES.R) {
                                                               ^
  symbol:   variable R
  location: class VERSION_CODES
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:322: error: cannot find symbol
                    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.R) {
                                                                   ^
  symbol:   variable R
  location: class VERSION_CODES
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:326: error: cannot find symbol
                    return Environment.isExternalStorageManager()
                                      ^
  symbol:   method isExternalStorageManager()
  location: class Environment
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionUtils.java:64: error: cannot find symbol
            case Manifest.permission.MANAGE_EXTERNAL_STORAGE:
                                    ^
  symbol:   variable MANAGE_EXTERNAL_STORAGE
  location: class permission
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionUtils.java:223: error: cannot find symbol
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R && hasPermissionInManifest(context, permissionNames, Manifest.permission.MANAGE_EXTERNAL_STORAGE ))
                                                                ^
  symbol:   variable R
  location: class VERSION_CODES
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionUtils.java:223: error: cannot find symbol
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R && hasPermissionInManifest(context, permissionNames, Manifest.permission.MANAGE_EXTERNAL_STORAGE ))
                                                                                          ^
  symbol:   variable MANAGE_EXTERNAL_STORAGE
  location: class permission
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionUtils.java:224: error: cannot find symbol
                    permissionNames.add(Manifest.permission.MANAGE_EXTERNAL_STORAGE);
                                                           ^
  symbol:   variable MANAGE_EXTERNAL_STORAGE
  location: class permission
11 errors

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':permission_handler:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 2m 40s
Exception: Gradle task assembleDebug failed with exit code 1

Expected behavior

Reproduction steps

Configuration

Version: 7.0.0

Platform:

  • [ ] :robot: Android

Most helpful comment

fixed it myself
Just set this to 30

    compileSdkVersion 30

All 3 comments

The main error I guess

/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:54: error: cannot find symbol
            status = Environment.isExternalStorageManager()
                                ^
  symbol:   method isExternalStorageManager()
  location: class Environment
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:218: error: cannot find symbol
                    if (permission == PermissionConstants.PERMISSION_GROUP_MANAGE_EXTERNAL_STORAGE && Build.VERSION.SDK_INT < Build.VERSION_CODES.R) {
                                                                                          ^
  symbol:   variable R
  location: class VERSION_CODES
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:232: error: cannot find symbol
            } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R && permission == PermissionConstants.PERMISSION_GROUP_MANAGE_EXTERNAL_STORAGE) {
                                                                   ^
  symbol:   variable R
  location: class VERSION_CODES
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:234: error: cannot find symbol
                        Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION,
                                ^
  symbol:   variable ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION
  location: class Settings
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:293: error: cannot find symbol
                if (Build.VERSION.SDK_INT < Build.VERSION_CODES.R) {
                                                               ^
  symbol:   variable R
  location: class VERSION_CODES
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:322: error: cannot find symbol
                    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.R) {
                                                                   ^
  symbol:   variable R
  location: class VERSION_CODES
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionManager.java:326: error: cannot find symbol
                    return Environment.isExternalStorageManager()
                                      ^
  symbol:   method isExternalStorageManager()
  location: class Environment
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionUtils.java:64: error: cannot find symbol
            case Manifest.permission.MANAGE_EXTERNAL_STORAGE:
                                    ^
  symbol:   variable MANAGE_EXTERNAL_STORAGE
  location: class permission
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionUtils.java:223: error: cannot find symbol
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R && hasPermissionInManifest(context, permissionNames, Manifest.permission.MANAGE_EXTERNAL_STORAGE ))
                                                                ^
  symbol:   variable R
  location: class VERSION_CODES
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionUtils.java:223: error: cannot find symbol
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R && hasPermissionInManifest(context, permissionNames, Manifest.permission.MANAGE_EXTERNAL_STORAGE ))
                                                                                          ^
  symbol:   variable MANAGE_EXTERNAL_STORAGE
  location: class permission
/Users/lvlrx/development/flutter/.pub-cache/hosted/pub.dartlang.org/permission_handler-7.0.0/android/src/main/java/com/baseflow/permissionhandler/PermissionUtils.java:224: error: cannot find symbol
                    permissionNames.add(Manifest.permission.MANAGE_EXTERNAL_STORAGE);
                                                           ^
  symbol:   variable MANAGE_EXTERNAL_STORAGE
  location: class permission
11 errors

fixed it myself
Just set this to 30

    compileSdkVersion 30

Maybe change document

android {
  compileSdkVersion 28 >> 30
  ...
}

https://github.com/Baseflow/flutter-permission-handler/pull/534

Was this page helpful?
0 / 5 - 0 ratings