Я хотел дать некоторым друзьям apk-версию моего проекта, чтобы протестировать ее. в моей IDE мой проект работает отлично , возможно, есть некоторые ошибки, но основная концепция работоспособна.
Они сообщают о некоторых ошибках, которые не происходят на моей стороне, поэтому я попробовал релиз apk , и когда я запускаю некоторые специфические методы Появляется эта ошибка:
[ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: Attempt to execute code removed by Dart AOT
compiler (TFA)
это сообщение об ошибке
методы, которые вызывают эту ошибку:
Future askFriends(String friendName) async {
print("Send FRIENDS Request");
print(friendName);
await _fs
.collection("Users")
.document(await pbd.getEmail(friendName))
.collection("FriendsRequest")
.document(await pbd.getUserName())
.setData({
"profilPicture": await pbd.getProfilePicture(),
"friendName": await pbd.getUserName(),
"friendEmail": currentUserEmail,
});
}
void acceptFriends(String friendName, String profilPicture) async {
var reference = randomAlphaNumeric(20);
String friendEmail = await pbd.getEmail(friendName);
String userName = await pbd.getUserName();
print("ADD FRIENDS");
await _fs
.collection("Users")
.document(currentUserEmail)
.collection("FriendsRequest")
.document(friendName)
.delete();
await _fs
.collection("Users")
.document(friendEmail)
.collection("Friends")
.document(userName)
.setData({
"profilPicture": await pbd.getProfilePicture(),
"friendName": userName,
"friendEmail": currentUserEmail,
"chatReference": reference,
});
await _fs
.collection("Users")
.document(currentUserEmail)
.collection("Friends")
.document(friendName)
.setData({
"profilPicture": profilPicture,
"friendName": friendName,
"friendEmail": friendEmail,
"chatReference": reference,
});
_fs.collection("PrivateChat").document(reference).setData({
"users": [userName, friendName]
});
_fs.collection("Users").document(currentUserEmail).updateData({
"friends": await pbd.getUserFriendsNumber(currentUserEmail) + 1,
});
_fs.collection("Users").document(friendEmail).updateData({
"friends": await pbd.getUserFriendsNumber(friendEmail) + 1,
});
}
Также при работе "Флаттер работает - -release -v "в отношении AOT возвращает только:
c:\src\flutter\bin\cache\artifacts\engine\common\flutter_patched_sdk_product/ --target=flutter -Ddart.developer.causal_async_stacks=true
-Ddart.vm.profile=false -Ddart.vm.product=true --bytecode-options=source-positions --aot --tfa --packages D:\Willy\myApp\Komeet\.packages
--output-dill D:\Willy\myApp\Komeet\.dart_tool\flutter_build\605851d98f347f3bc8bcbe0b131320ff\app.dill --depfile
D:\Willy\myApp\Komeet\.dart_tool\flutter_build\605851d98f347f3bc8bcbe0b131320ff\kernel_snapshot.d package:Komeet/main.dart
[+15101 ms] [+15122 ms] kernel_snapshot: Complete
[ +198 ms] [ +266 ms] invalidated build due to missing files:
c:\src\flutter\bin\cache\artifacts\engine\android-arm64-release\windows-x64\gen_snapshot
[ +600 ms] [ +509 ms] android_aot_release_android-arm64: Starting due to {InvalidatedReason.inputChanged, InvalidatedReason.inputMissing}
[ +1 ms] [ +6 ms] executing: c:\src\flutter\bin\cache\artifacts\engine\android-arm64-release\windows-x64\gen_snapshot
--causal_async_stacks --deterministic --snapshot_kind=app-aot-elf
--elf=D:\Willy\myApp\Komeet\.dart_tool\flutter_build\605851d98f347f3bc8bcbe0b131320ff\arm64-v8a\app.so --strip
D:\Willy\myApp\Komeet\.dart_tool\flutter_build\605851d98f347f3bc8bcbe0b131320ff\app.dill
[ +1 ms] [ ] aot_android_asset_bundle: Starting due to {InvalidatedReason.inputChanged}
[ +197 ms] [ +231 ms] aot_android_asset_bundle: Complete
[+10601 ms] [+10568 ms] android_aot_release_android-arm64: Complete
[ +198 ms] [ +245 ms] android_aot_bundle_release_android-arm64: Starting due to {InvalidatedReason.inputChanged}
[ +101 ms] [ +59 ms] android_aot_bundle_release_android-arm64: Complete
[ ] [ +82 ms] Persisting file store
[ +99 ms] [ +65 ms] Done persisting file store
[ +1 ms] [ +3 ms] build succeeded.
Запись на чтение в firestore не является проблемой, так как многие методы, которые используются в apk, используют Cloud Firestore и полностью в порядке .
Доктор флаттера
My Pubspe c .yaml
Build.grade [уровень APP ]
Build.grade [Уровень проекта]
В сети я нашел только одну похожую проблему: Попытка выполнить код, удаленный Dart AOT-компилятор (TFA), как устранить эту проблему
Итак, я попытался удалить каталог сборки, очистить флаттер, восстановить кэш флаттера паба, и воссоздать новый проект флаттера и импортировать все компоненты моего проекта. смените канал флаттера.
Также, написав «Очистить флаттер», выведите это предупреждение.
Failed to remove build. A program may still be using a file in the directory or the directory itself. To find and stop such a program, see:
https://superuser.com/questions/1333118/cant-delete-empty-folder-because-it-is-used
Я следовал инструкциям, но ничего не изменилось.
Спасибо за помощь.