diff --git a/docs/custom-tasks.md b/docs/custom-tasks.md index 6e7a0b8f8..4dee16be2 100644 --- a/docs/custom-tasks.md +++ b/docs/custom-tasks.md @@ -55,24 +55,6 @@ Data directory can be changed in settings, except for iOS, and its possible loca You can specify the full path, which will not depend on the data folder. Absolute path is only available for the task config path. All local resources in the task config must point to the data folder. -## Overriding default folders - -You can change the data folder without using graphical interface. - -Use `--dart-define=FLUTTER_DATA_FOLDER=` to specify the folder you want to use. -It will still be possible to choose a different folder via UI but the app will use specified folder by default. - -If you build the app using makefile commands, use `FLUTTER_DATA_FOLDER` environment variable. For example: `make flutter/test/integration FLUTTER_CACHE_FOLDER=/my/folder/path` - -You can also override app cache folder. -Use `--dart-define=FLUTTER_CACHE_FOLDER=` for manual build or `FLUTTER_CACHE_FOLDER` env for makefile script. -Note that it's impossible to change the cache folder from the UI. - -These options are intended for CI use, and possibly for internal testing. -Never use them for any public builds. - -These options are not available on iOS. - ## Using external resources on an iPhone On iOS an application resource folder can be found in `On My iPhone` -> ``. diff --git a/flutter/android/android-docker.mk b/flutter/android/android-docker.mk index a77fbe28d..21b03d649 100644 --- a/flutter/android/android-docker.mk +++ b/flutter/android/android-docker.mk @@ -46,8 +46,6 @@ flutter_common_docker_flags= \ --env FIREBASE_CRASHLYTICS_ENABLED=${FIREBASE_CRASHLYTICS_ENABLED} \ --env FLUTTER_BUILD_NUMBER=${FLUTTER_BUILD_NUMBER} \ --env FLUTTER_FORCE_PUB_GET=1 \ - --env FLUTTER_DATA_FOLDER=${FLUTTER_DATA_FOLDER} \ - --env FLUTTER_CACHE_FOLDER=${FLUTTER_CACHE_FOLDER} \ ${proxy_docker_args} \ ${backend_qti_flutter_docker_args} \ ${backend_samsung_docker_args} \ diff --git a/flutter/android/android.mk b/flutter/android/android.mk index 57a6f717a..effa10ab0 100644 --- a/flutter/android/android.mk +++ b/flutter/android/android.mk @@ -74,8 +74,7 @@ flutter/android/apk: cd flutter && ${_start_args} flutter --no-version-check build apk \ ${flutter_official_build_arg} \ ${flutter_firebase_crashlytics_arg} \ - ${flutter_build_number_arg} \ - ${flutter_folder_args} + ${flutter_build_number_arg} cp -f flutter/build/app/outputs/flutter-apk/app-release.apk ${flutter_android_apk_release_path}.apk .PHONY: flutter/android/appbundle flutter/android/appbundle: @@ -83,8 +82,7 @@ flutter/android/appbundle: cd flutter && ${_start_args} flutter --no-version-check build appbundle \ ${flutter_official_build_arg} \ ${flutter_firebase_crashlytics_arg} \ - ${flutter_build_number_arg} \ - ${flutter_folder_args} + ${flutter_build_number_arg} cp -f flutter/build/app/outputs/bundle/release/app-release.aab ${flutter_android_apk_release_path}.aab FLUTTER_ANDROID_APK_TEST_MAIN?=test-main.apk diff --git a/flutter/android/app/src/main/AndroidManifest.xml b/flutter/android/app/src/main/AndroidManifest.xml index 1070ef98e..79cfd7873 100644 --- a/flutter/android/app/src/main/AndroidManifest.xml +++ b/flutter/android/app/src/main/AndroidManifest.xml @@ -5,7 +5,6 @@ - 10.25.0) @@ -147,8 +145,6 @@ PODS: - path_provider_foundation (0.0.1): - Flutter - FlutterMacOS - - permission_handler_apple (9.1.1): - - Flutter - PromisesObjC (2.4.0) - PromisesSwift (2.4.0): - PromisesObjC (= 2.4.0) @@ -168,7 +164,6 @@ PODS: DEPENDENCIES: - desktop_webview_auth (from `.symlinks/plugins/desktop_webview_auth/ios`) - device_info_plus (from `.symlinks/plugins/device_info_plus/ios`) - - file_picker (from `.symlinks/plugins/file_picker/ios`) - firebase_app_check (from `.symlinks/plugins/firebase_app_check/ios`) - firebase_auth (from `.symlinks/plugins/firebase_auth/ios`) - firebase_core (from `.symlinks/plugins/firebase_core/ios`) @@ -179,7 +174,6 @@ DEPENDENCIES: - integration_test (from `.symlinks/plugins/integration_test/ios`) - package_info_plus (from `.symlinks/plugins/package_info_plus/ios`) - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`) - - permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`) - share (from `.symlinks/plugins/share/ios`) - share_plus (from `.symlinks/plugins/share_plus/ios`) - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`) @@ -216,8 +210,6 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/desktop_webview_auth/ios" device_info_plus: :path: ".symlinks/plugins/device_info_plus/ios" - file_picker: - :path: ".symlinks/plugins/file_picker/ios" firebase_app_check: :path: ".symlinks/plugins/firebase_app_check/ios" firebase_auth: @@ -238,8 +230,6 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/package_info_plus/ios" path_provider_foundation: :path: ".symlinks/plugins/path_provider_foundation/darwin" - permission_handler_apple: - :path: ".symlinks/plugins/permission_handler_apple/ios" share: :path: ".symlinks/plugins/share/ios" share_plus: @@ -255,7 +245,6 @@ SPEC CHECKSUMS: AppCheckCore: db04d539b37794558391bc56bc65e2440b01a195 desktop_webview_auth: d645139460ef203d50bd0cdb33356785dd939cce device_info_plus: 97af1d7e84681a90d0693e63169a5d50e0839a0d - file_picker: 684373a825f14becb5556cf6c5b88610290914b2 Firebase: 0312a2352584f782ea56f66d91606891d4607f06 firebase_app_check: b67baa1ab3942b51fde8855f614f543d9d6b4dba firebase_auth: 76ea642e91a9e914b3af751a416046ce1a965cf4 @@ -284,7 +273,6 @@ SPEC CHECKSUMS: nanopb: 438bc412db1928dac798aa6fd75726007be04262 package_info_plus: 58f0028419748fad15bf008b270aaa8e54380b1c path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46 - permission_handler_apple: e76247795d700c14ea09e3a2d8855d41ee80a2e6 PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47 PromisesSwift: 9d77319bbe72ebf6d872900551f7eeba9bce2851 RecaptchaInterop: 7d1a4a01a6b2cb1610a47ef3f85f0c411434cb21 diff --git a/flutter/lib/app_constants.dart b/flutter/lib/app_constants.dart index e71c1a462..b75f56778 100644 --- a/flutter/lib/app_constants.dart +++ b/flutter/lib/app_constants.dart @@ -7,10 +7,6 @@ class DartDefine { bool.fromEnvironment('FIREBASE_CRASHLYTICS_ENABLED', defaultValue: false); static const isFastMode = bool.fromEnvironment('FAST_MODE', defaultValue: false); - static const defaultCacheFolder = - String.fromEnvironment('FLUTTER_CACHE_FOLDER'); - static const defaultDataFolder = - String.fromEnvironment('FLUTTER_DATA_FOLDER'); } class WidgetKeys { diff --git a/flutter/lib/l10n/app_en.arb b/flutter/lib/l10n/app_en.arb index 26b171db8..8eb04d97c 100644 --- a/flutter/lib/l10n/app_en.arb +++ b/flutter/lib/l10n/app_en.arb @@ -77,18 +77,6 @@ "settingsTaskConfigLocalResource": "local", "settingsTaskConfigError": "Path to config is invalid:", "settingsTaskDataFolderTitle": "Data folder", - "settingsTaskDataFolderDesc": "Task config may contain non-downloadable files that must be managed manually.", - "settingsTaskDataFolderDefault": "Default", - "settingsTaskDataFolderApp": "Application folder", - "settingsTaskDataFolderCustom": "Custom folder", - "settingsTaskDataFolderSelected": "Selected data folder", - "settingsTaskDataFolderWarning": "Folder does not exist or is not accessible", - "settingsTaskDataFolderPermissionRequired": "Access all file permission", - "settingsTaskDataFolderPermissionNotGranted": "Access all file permission is required to use custom folder but not granted. Tap here to grant the permission.", - "settingsTaskDataFolderPermissionGranted": "Access all file permission is required to use custom folder and already granted.", - "settingsTaskCacheFolderTitle": "Cache folder", - "settingsTaskCacheFolderDesc": "Cache folder contains downloadable data.\nThis folder can only be changed during build.", - "settingsTaskCacheFolderDefault": "Default", "settingsClearCache": "Clear cache", "settingsClearCacheConfirm": "All loaded resources will be deleted and downloaded again. Continue?", "settingsUnableSpecifyConfiguration": "Could not specify until benchmarks is running or content is loading", @@ -100,7 +88,7 @@ "dialogCancel": "Cancel", "dialogTitleConfirm": "Confirm?", "dialogContentOfflineWarning": "Offline mode is enabled but following internet resources are defined in the configuration. Do you want to continue?", - "dialogContentMissingFiles": "Selected datasets directory does not contain files for following benchmarks:", + "dialogContentMissingFiles": "The following files don't exist:", "dialogContentChecksumError": "The following files failed checksum validation:", "dialogContentNoSelectedBenchmarkError": "Please select at least one benchmark.", diff --git a/flutter/lib/resources/resource_manager.dart b/flutter/lib/resources/resource_manager.dart index 15858131d..cddb84a14 100644 --- a/flutter/lib/resources/resource_manager.dart +++ b/flutter/lib/resources/resource_manager.dart @@ -5,13 +5,11 @@ import 'package:flutter/foundation.dart'; import 'package:crypto/crypto.dart'; import 'package:path_provider/path_provider.dart'; -import 'package:mlperfbench/app_constants.dart'; import 'package:mlperfbench/resources/cache_manager.dart'; import 'package:mlperfbench/resources/resource.dart'; import 'package:mlperfbench/resources/result_manager.dart'; import 'package:mlperfbench/resources/utils.dart'; import 'package:mlperfbench/store.dart'; -import 'package:mlperfbench/ui/settings/data_folder_type.dart'; class ResourceManager { static const _dataPrefix = 'local://'; @@ -60,18 +58,11 @@ class ResourceManager { } String getDataFolder() { - switch (parseDataFolderType(store.dataFolderType)) { - case DataFolderType.default_: - if (DartDefine.defaultDataFolder.isNotEmpty) { - return DartDefine.defaultDataFolder; - } else { - return applicationDirectory; - } - case DataFolderType.appFolder: - return applicationDirectory; - case DataFolderType.custom: - return store.customDataFolder; - } + return applicationDirectory; + } + + String getDataPrefix() { + return _dataPrefix; } Future isResourceExist(String? uri) async { @@ -152,11 +143,7 @@ class ResourceManager { Future initSystemPaths() async { applicationDirectory = await getApplicationDirectory(); await Directory(applicationDirectory).create(recursive: true); - if (DartDefine.defaultCacheFolder.isNotEmpty) { - _loadedResourcesDir = DartDefine.defaultCacheFolder; - } else { - _loadedResourcesDir = '$applicationDirectory/$_loadedResourcesDirName'; - } + _loadedResourcesDir = '$applicationDirectory/$_loadedResourcesDirName'; await Directory(_loadedResourcesDir).create(); cacheManager = CacheManager(_loadedResourcesDir); @@ -167,7 +154,8 @@ class ResourceManager { final missingResources = []; for (var r in resources) { if (!await isResourceExist(r.path)) { - missingResources.add(r.path); + final resolvedPath = get(r.path); + missingResources.add(resolvedPath); } } return missingResources; diff --git a/flutter/lib/store.dart b/flutter/lib/store.dart index 93139dcc3..b4b0d0100 100644 --- a/flutter/lib/store.dart +++ b/flutter/lib/store.dart @@ -106,20 +106,6 @@ class Store extends ChangeNotifier { notifyListeners(); } - String get dataFolderType => _getString(StoreConstants.dataFolderType); - - set dataFolderType(String value) { - _storeFromDisk.setString(StoreConstants.dataFolderType, value); - notifyListeners(); - } - - String get customDataFolder => _getString(StoreConstants.customDataFolder); - - set customDataFolder(String value) { - _storeFromDisk.setString(StoreConstants.customDataFolder, value); - notifyListeners(); - } - String get taskSelection => _getString(StoreConstants.taskSelection); set taskSelection(String value) { @@ -152,8 +138,6 @@ class StoreConstants { static const previousExtendedResult = 'previous extended result'; static const previousAppVersion = 'previous app version'; static const keepLogs = 'keep_logs'; - static const dataFolderType = 'data folder type'; - static const customDataFolder = 'custom data folder'; static const taskSelection = 'disabled_tasks'; static const testMinDuration = 'test min duration'; static const testCooldownDuration = 'test cooldown duration'; diff --git a/flutter/lib/ui/settings/data_folder_type.dart b/flutter/lib/ui/settings/data_folder_type.dart deleted file mode 100644 index f0f57c8a0..000000000 --- a/flutter/lib/ui/settings/data_folder_type.dart +++ /dev/null @@ -1,17 +0,0 @@ -import 'package:mlperfbench/app_constants.dart'; - -enum DataFolderType { default_, appFolder, custom } - -DataFolderType parseDataFolderType(String value) { - if (value == DataFolderType.appFolder.name && - DartDefine.defaultDataFolder.isNotEmpty) { - // if defaultDataFolder is empty then default_ and appFolder value means the same, - // so it doesn't make sense to have them as separate values - return DataFolderType.appFolder; - } - if (value == DataFolderType.custom.name) { - return DataFolderType.custom; - } - - return DataFolderType.default_; -} diff --git a/flutter/lib/ui/settings/task_config_section.dart b/flutter/lib/ui/settings/task_config_section.dart index 5049cc221..428238bce 100644 --- a/flutter/lib/ui/settings/task_config_section.dart +++ b/flutter/lib/ui/settings/task_config_section.dart @@ -2,149 +2,13 @@ import 'dart:io'; import 'package:flutter/material.dart'; -import 'package:file_picker/file_picker.dart'; -import 'package:permission_handler/permission_handler.dart'; import 'package:provider/provider.dart'; -import 'package:mlperfbench/app_constants.dart'; import 'package:mlperfbench/benchmark/state.dart'; import 'package:mlperfbench/localizations/app_localizations.dart'; import 'package:mlperfbench/resources/config_manager.dart'; import 'package:mlperfbench/store.dart'; -import 'package:mlperfbench/ui/app_styles.dart'; import 'package:mlperfbench/ui/error_dialog.dart'; -import 'package:mlperfbench/ui/settings/data_folder_type.dart'; - -class _DataFolderSelectorHelper { - final AppLocalizations l10n; - final Store store; - final DataFolderType selectedOption; - - _DataFolderSelectorHelper(BuildContext context) - : l10n = AppLocalizations.of(context)!, - store = context.watch(), - selectedOption = - parseDataFolderType(context.read().dataFolderType); - - Widget build() { - final items = []; - - final dataFolderTitle = ListTile( - title: Padding( - padding: const EdgeInsets.only(bottom: 5), - child: Text( - l10n.settingsTaskDataFolderTitle, - ), - ), - subtitle: Text(l10n.settingsTaskDataFolderDesc), - ); - items.add(dataFolderTitle); - - items.add(_makeDefaultOption()); - if (DartDefine.defaultDataFolder.isNotEmpty) { - items.add(_makeAppFolderOption()); - } - items.add(_makeCustomOption()); - - return Column( - children: items, - ); - } - - void setValue(DataFolderType? value) { - if (value == null) return; - if (value == selectedOption) return; - store.dataFolderType = value.name; - } - - Widget _makeDefaultOption() { - late final String defaultOptionSubtitle; - if (DartDefine.defaultDataFolder.isEmpty) { - defaultOptionSubtitle = l10n.settingsTaskDataFolderApp; - } else { - defaultOptionSubtitle = DartDefine.defaultDataFolder; - } - return ListTile( - title: Text(l10n.settingsTaskDataFolderDefault), - subtitle: Text(defaultOptionSubtitle), - leading: Radio( - value: DataFolderType.default_, - groupValue: selectedOption, - onChanged: setValue, - ), - onTap: () => setValue(DataFolderType.default_), - ); - } - - Widget _makeAppFolderOption() { - return ListTile( - title: Text(l10n.settingsTaskDataFolderApp), - leading: Radio( - value: DataFolderType.appFolder, - groupValue: selectedOption, - onChanged: setValue, - ), - onTap: () => setValue(DataFolderType.appFolder), - ); - } - - Widget _makeCustomOption() { - final pickFolder = () async { - final dir = await FilePicker.platform.getDirectoryPath( - lockParentWindow: true, - ); - if (dir != null) { - store.customDataFolder = dir; - setValue(DataFolderType.custom); - } - }; - final pathField = Row( - children: [ - Expanded( - child: Text(store.customDataFolder), - ), - ElevatedButton( - onPressed: pickFolder, - child: const Icon(Icons.folder), - ) - ], - ); - Widget dirWarning = const SizedBox.shrink(); - if (store.customDataFolder.isNotEmpty) { - dirWarning = FutureBuilder( - future: Directory(store.customDataFolder).exists(), - builder: (context, AsyncSnapshot snapshot) { - if (!snapshot.hasData) { - return const SizedBox.shrink(); - } - final dirExists = snapshot.data!; - if (!dirExists) { - return Text( - l10n.settingsTaskDataFolderWarning - .replaceFirst('', store.customDataFolder), - style: const TextStyle(color: AppColors.errorText), - ); - } - return const SizedBox.shrink(); - }, - ); - } - return ListTile( - title: Text(l10n.settingsTaskDataFolderCustom), - subtitle: Column( - children: [pathField, dirWarning], - ), - leading: Radio( - value: DataFolderType.custom, - groupValue: selectedOption, - onChanged: setValue, - ), - onTap: () async { - await pickFolder(); - }, - ); - } -} class TaskConfigSection extends StatelessWidget { final List _configs; @@ -168,27 +32,19 @@ class TaskConfigSection extends StatelessWidget { (c) => _getConfigChoice(context, c, store.chosenConfigurationName), ), ); - // On ios you need to properly request access to a folder outside of the app folder - // but file_picker plugin doesn't do it. - // see the following link for details: - // https://github.com/mlcommons/mobile_app_open/pull/562#discussion_r992167655 - if (!Platform.isIOS) { - items.addAll([ - _makeCacheFolderNotice(l10n), - _DataFolderSelectorHelper(context).build(), - const Divider(), - ListTile( - title: Text(l10n.settingsTaskDataFolderSelected), - subtitle: Text(state.resourceManager.getDataFolder())), - ]); - } - - // On Android we need MANAGE_EXTERNAL_STORAGE permission - // see https://github.com/mlcommons/mobile_app_open/issues/702 - if (Platform.isAndroid) { - items.add(const ManageFilePermissionWidget()); + String dataFolder; + if (Platform.isIOS) { + dataFolder = 'Files/MLPerf/'; + } else { + dataFolder = state.resourceManager.getDataFolder(); } - + final subtitle = '${state.resourceManager.getDataPrefix()} = $dataFolder'; + items.addAll([ + const Divider(), + ListTile( + title: Text(l10n.settingsTaskDataFolderTitle), + subtitle: Text(subtitle)), + ]); return Column( crossAxisAlignment: CrossAxisAlignment.start, children: items, @@ -231,76 +87,6 @@ class TaskConfigSection extends StatelessWidget { ), ); } - - Widget _makeCacheFolderNotice(AppLocalizations l10n) { - if (DartDefine.defaultCacheFolder.isEmpty) { - return const SizedBox.shrink(); - } - return Column( - children: [ - ListTile( - title: Padding( - padding: const EdgeInsets.only(bottom: 5), - child: Text( - l10n.settingsTaskCacheFolderTitle, - ), - ), - subtitle: Text(l10n.settingsTaskCacheFolderDesc), - ), - ListTile( - enabled: false, - title: Text(l10n.settingsTaskCacheFolderDefault), - subtitle: const Text(DartDefine.defaultCacheFolder), - leading: const Radio( - value: true, - groupValue: true, - onChanged: null, - ), - ) - ], - ); - } -} - -class ManageFilePermissionWidget extends StatefulWidget { - const ManageFilePermissionWidget({super.key}); - - @override - State createState() => - _ManageFilePermissionWidgetState(); -} - -class _ManageFilePermissionWidgetState - extends State { - Future _permissionGranted = Permission.manageExternalStorage.isGranted; - - @override - Widget build(BuildContext context) { - final l10n = AppLocalizations.of(context)!; - return FutureBuilder( - future: _permissionGranted, - builder: (BuildContext context, AsyncSnapshot snapshot) { - final title = l10n.settingsTaskDataFolderPermissionRequired; - var subtitle = l10n.settingsTaskDataFolderPermissionNotGranted; - var iconColor = Colors.grey; - if (snapshot.data == true) { - subtitle = l10n.settingsTaskDataFolderPermissionGranted; - iconColor = Colors.green; - } - return ListTile( - title: Text(title), - subtitle: Text(subtitle), - trailing: Icon(color: iconColor, Icons.check_circle), - onTap: () { - setState(() { - final status = Permission.manageExternalStorage.request(); - _permissionGranted = status.isGranted; - }); - }, - ); - }, - ); - } } class TaskConfigErrorScreen extends StatelessWidget { diff --git a/flutter/pubspec.lock b/flutter/pubspec.lock index 3b784875f..b0890b821 100644 --- a/flutter/pubspec.lock +++ b/flutter/pubspec.lock @@ -297,14 +297,6 @@ packages: url: "https://pub.dev" source: hosted version: "7.0.0" - file_picker: - dependency: "direct main" - description: - name: file_picker - sha256: "29c90806ac5f5fb896547720b73b17ee9aed9bba540dc5d91fe29f8c5745b10a" - url: "https://pub.dev" - source: hosted - version: "8.0.3" firebase_app_check: dependency: "direct main" description: @@ -528,14 +520,6 @@ packages: url: "https://pub.dev" source: hosted version: "0.7.1" - flutter_plugin_android_lifecycle: - dependency: transitive - description: - name: flutter_plugin_android_lifecycle - sha256: "8cf40eebf5dec866a6d1956ad7b4f7016e6c0cc69847ab946833b7d43743809f" - url: "https://pub.dev" - source: hosted - version: "2.0.19" flutter_svg: dependency: "direct main" description: @@ -852,30 +836,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.11.1" - permission_handler: - dependency: "direct main" - description: - name: permission_handler - sha256: bc56bfe9d3f44c3c612d8d393bd9b174eb796d706759f9b495ac254e4294baa5 - url: "https://pub.dev" - source: hosted - version: "10.4.5" - permission_handler_android: - dependency: transitive - description: - name: permission_handler_android - sha256: "59c6322171c29df93a22d150ad95f3aa19ed86542eaec409ab2691b8f35f9a47" - url: "https://pub.dev" - source: hosted - version: "10.3.6" - permission_handler_apple: - dependency: transitive - description: - name: permission_handler_apple - sha256: "99e220bce3f8877c78e4ace901082fb29fa1b4ebde529ad0932d8d664b34f3f5" - url: "https://pub.dev" - source: hosted - version: "9.1.4" permission_handler_platform_interface: dependency: transitive description: diff --git a/flutter/pubspec.yaml b/flutter/pubspec.yaml index 684e5ac87..36bb66f07 100644 --- a/flutter/pubspec.yaml +++ b/flutter/pubspec.yaml @@ -38,14 +38,12 @@ dependencies: tuple: ^2.0.2 bot_toast: ^4.1.3 process_run: ^0.14.2 - file_picker: ^8.0.3 worker_manager: ^7.0.2 ffi: ^2.1.2 async: ^2.11.0 archive: ^3.5.1 http: ^1.2.1 json_annotation: ^4.9.0 - permission_handler: ^10.4.5 flutter_markdown: ^0.7.1 firebase_core: ^2.31.0 firebase_storage: ^11.7.5 diff --git a/flutter/windows/flutter/generated_plugin_registrant.cc b/flutter/windows/flutter/generated_plugin_registrant.cc index d5013ba11..c3384ec52 100644 --- a/flutter/windows/flutter/generated_plugin_registrant.cc +++ b/flutter/windows/flutter/generated_plugin_registrant.cc @@ -6,13 +6,10 @@ #include "generated_plugin_registrant.h" -#include #include #include void RegisterPlugins(flutter::PluginRegistry* registry) { - PermissionHandlerWindowsPluginRegisterWithRegistrar( - registry->GetRegistrarForPlugin("PermissionHandlerWindowsPlugin")); SharePlusWindowsPluginCApiRegisterWithRegistrar( registry->GetRegistrarForPlugin("SharePlusWindowsPluginCApi")); UrlLauncherWindowsRegisterWithRegistrar( diff --git a/flutter/windows/flutter/generated_plugins.cmake b/flutter/windows/flutter/generated_plugins.cmake index a0d138869..01d383628 100644 --- a/flutter/windows/flutter/generated_plugins.cmake +++ b/flutter/windows/flutter/generated_plugins.cmake @@ -3,7 +3,6 @@ # list(APPEND FLUTTER_PLUGIN_LIST - permission_handler_windows share_plus url_launcher_windows ) diff --git a/flutter/windows/windows.mk b/flutter/windows/windows.mk index cceff0f59..85967ad8a 100644 --- a/flutter/windows/windows.mk +++ b/flutter/windows/windows.mk @@ -66,8 +66,7 @@ flutter/windows/release/build: cd flutter && ${_start_args} flutter --no-version-check build windows --no-pub \ ${flutter_official_build_arg} \ ${flutter_firebase_crashlytics_arg} \ - ${flutter_build_number_arg} \ - ${flutter_folder_args} + ${flutter_build_number_arg} .PHONY: flutter/windows/release/name flutter/windows/release/name: