Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The requested file name is already in use. #1173

Closed
PBomermustekiin opened this issue Aug 6, 2024 · 1 comment
Closed

The requested file name is already in use. #1173

PBomermustekiin opened this issue Aug 6, 2024 · 1 comment

Comments

@PBomermustekiin
Copy link

Version

3.1.1

Platforms

iOS

Device Model

iphone 15 pro max

flutter info

[✓] Flutter (Channel beta, 3.22.0-0.3.pre, on macOS 14.4.1 23E224 darwin-arm64, locale tr-TR)
    • Flutter version 3.22.0-0.3.pre on channel beta at /Users/omer/development/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 87b652410d (3 months ago), 2024-04-23 21:41:18 -0500
    • Engine revision b4bfd45986
    • Dart version 3.4.0 (build 3.4.0-282.3.beta)
    • DevTools version 2.34.3

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/omer/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15E204a
    • CocoaPods version 1.15.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)

[✓] Connected device (4 available)
    • Ömer iPhone 14 Pro Max (mobile) • 00008120-001A25803487C01E • ios            • iOS 17.6 21G80
    • macOS (desktop)                 • macos                     • darwin-arm64   • macOS 14.4.1 23E224 darwin-arm64
    • Mac Designed for iPad (desktop) • mac-designed-for-ipad     • darwin         • macOS 14.4.1 23E224 darwin-arm64
    • Chrome (web)                    • chrome                    • web-javascript • Google Chrome 127.0.6533.89

[✓] Network resources
    • All expected network resources are available.

• No issues found!

How to reproduce?

when i try to order by videos sizes, getting that error just for some devices, not always.

Logs

PlatformException(Error Domain=AVFoundationErrorDomain Code=-11823 "Cannot Save" UserInfo={NSLocalizedRecoverySuggestion=The requested file name is already in use. Try a different file name or location., NSLocalizedDescription=Cannot Save, NSUnderlyingError=0x300141aa0 {Error Domain=NSOSStatusErrorDomain Code=-12101 "(null)"}}, null, null, null)

Example code (optional)

getStorageOrderedVideosAssets() async {
    //dynamicAlbumDetailAssets.clear();
    storageVideos.addAll(videos);
    await _populateVideoSizes();
  }

  Future<void> _populateVideoSizes() async {
    List<AssetEntity> problematicEntities = [];

    for (var entity in dynamicAlbumDetailAssets) {
      try {
        await _processEntity(entity);
      } catch (e) {
        debugPrint("######## Error accessing file for entity $entity: $e");
        problematicEntities.add(entity);
      }
    }

    // Retry problematic entities
    for (var entity in problematicEntities) {
      try {
        await _processEntity(entity);
        problematicEntities.remove(entity); // Remove if successful on retry
      } catch (e) {
        debugPrint("######## Retried and still error for entity $entity: $e");
      }
    }

    // Sort the successfully processed entities
    dynamicAlbumDetailAssets.sort((a, b) {
      int sizeA = videoSizes[a] ?? 0;
      int sizeB = videoSizes[b] ?? 0;
      return sizeB.compareTo(sizeA); // Sort by size in descending order
    });

    // Append problematic entities at the end
    dynamicAlbumDetailAssets.addAll(problematicEntities);
  }

  Future<void> _processEntity(AssetEntity entity) async {
    final file = await entity.file;
    final size = file?.lengthSync() ?? 0;
    videoSizes[entity] = size;
  }

Contact

omermustekiin@gmail.com

@PBomermustekiin PBomermustekiin changed the title [Bug report] The requested file name is already in use. Aug 6, 2024
@AlexV525
Copy link
Member

Could you upgrade to the latest version and dump the exact stack trace if it is still reproducible?

@AlexV525 AlexV525 closed this as not planned Won't fix, can't repro, duplicate, stale Nov 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants