#android #flutter
#Android #flutter
Вопрос:
Если я хочу зарегистрировать сообщение, которое Android Studio покажет в своей консоли, я могу это сделать:
import 'dart:developer';
void main() {
log('Hello world!');
runApp(const MyApp());
}
Но если я упакую приложение, запущу его, а затем поищу его с logcat
помощью, его там нет.
flutter build apk
adb install build/app/outputs/flutter-apk/app-release.apk
adb shell am start -a android.intent.action.MAIN -n com.example.myapp/.MainActivity
adb logcat -t '12-08 00:00:00.000' | grep Hello
Это приводит к пустому выводу. Итак, как мне зарегистрировать системное сообщение, а не просто сообщение об отладке IDE?
Ответ №1:
Используйте print()
или debugPrint()
.
У вас есть два варианта ведения журнала для вашего приложения. Первый — использовать stdout и stderr. Как правило, это делается с помощью операторов print() или путем импорта dart:io и вызова методов в stderr и stdout.
Если вы выводите слишком много одновременно, Android иногда отбрасывает некоторые строки журнала. Чтобы избежать этого, используйте DebugPrint() из библиотеки foundation от Flutter.
Для получения дополнительной информации проверьте отладку приложений Flutter программно.