-
Notifications
You must be signed in to change notification settings - Fork 12
Description
minSdk 29
targetSdk 34
compileSdk 34
I/flutter (16667): #### writeAudioTagArtist file path /storage/emulated/0/Recordings/Call/통화 녹음 010aaaaxxxx_240308_160557.m4a
I/flutter (16667): ###### writeAudioTagArtist exception Instance of 'FrbAnyhowException'
I/flutter (16667): #0 FlutterRustBridgeBase._transformRust2DartMessage (package:flutter_rust_bridge/src/basic.dart:133)
I/flutter (16667): #1 FlutterRustBridgeBase.executeNormal. (package:flutter_rust_bridge/src/basic.dart:70)
FAILED Metadata metadata = await MetadataGod.readMetadata(file: path);
What I am executed:
Future writeAudioTagArtist(String path, String phone) async {
final DeviceInfoPlugin deviceInfoPlugin = DeviceInfoPlugin();
AndroidDeviceInfo info = await deviceInfoPlugin.androidInfo;
int sdkVersion = info.version.sdkInt;
if (Platform.isAndroid && sdkVersion <= 32) {
final bool hasStorageAccess = await Permission.storage.isGranted;
if(!hasStorageAccess) {
await Permission.storage.request();
if (!await Permission.storage.isGranted) {
print("#### writeAudioTagArtist Permission.storage not granted");
return;
}
}
}
print("#### writeAudioTagArtist file path ${path}");
try {
// Get metadata from file
Metadata metadata = await MetadataGod.readMetadata(file: path);
print("#### A${phone}");
print("#### A${path}");
print("#### A${metadata}");
// Set metadata to file
await MetadataGod.writeMetadata(file: path, metadata:
Metadata(
title: phone,
artist: phone,
albumArtist: phone,
genre: phone,
),
);
Metadata metadataA = await MetadataGod.readMetadata(file: path);
print("#### TITLE ${metadataA.title}");
print("#### ARTIST ${metadataA.artist}");
print("#### ALBUM ${metadataA.albumArtist}");
print("#### GENRE ${metadataA.genre}");
} catch (error, stack) {
print("###### writeAudioTagArtist exception ${error}");
print(stack);
}
}
Please help. Thanks in advance.