Код Flutter работает на телефоне Android, Windows, но не на Chrome, симуляторе Android VSC или планшете Dart.Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Код Flutter работает на телефоне Android, Windows, но не на Chrome, симуляторе Android VSC или планшете Dart.

Сообщение Anonymous »

Я проводил простой тест с помощью DartPad, и он не сработал. Итак, я попробовал запустить на своем телефоне Android с помощью Visual Studio Code и USB-кабеля, и все сработало нормально. Затем я попробовал использовать симулятор Android через VSC, но это не удалось - разные сообщения об ошибках. Я попробовал это в Chrome, и это не помогло, попробовал в Windows, и это сработало (все на VSC).
Вот код:

Код: Выделить всё

import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;

final filename = [
"https://ListeningToGod.org/SermonEngagement/TextFiles/2024-09-080Ia.json",
"https://ListeningToGod.org/SermonEngagement/TextFiles/2024-09-0801a.json",
"https://ListeningToGod.org/SermonEngagement/TextFiles/2024-09-0802a.json",
"https://ListeningToGod.org/SermonEngagement/TextFiles/2024-09-0803a.json",
"https://ListeningToGod.org/SermonEngagement/TextFiles/2024-09-0804a.json",
"https://ListeningToGod.org/SermonEngagement/TextFiles/2024-09-0805a.json",
"https://ListeningToGod.org/SermonEngagement/TextFiles/2024-09-0806a.json",
"https://ListeningToGod.org/SermonEngagement/TextFiles/2024-09-0807a.json",
"https://ListeningToGod.org/SermonEngagement/TextFiles/2024-09-0808a.json",
"https://ListeningToGod.org/SermonEngagement/TextFiles/2024-09-0809a.json",
];

Future _checkUrl(String url) async {
http.Response urlResponse = await http.get(Uri.parse(url));
if (urlResponse.statusCode == 200) {
return true;
} else {
return false;
}
}

Future getMaxEngagementIndex() async {
int index = 0;
for (int i = 0; i < filename.length; i++) {
String engagementFileName = filename[i];
await _checkUrl(engagementFileName).then((filePresent) {
if (filePresent) {
index++;
}
});
}
return index;
}

Future main() async {
int numfiles = await getMaxEngagementIndex();
String num = numfiles.toString();
runApp(MyApp(num));
}

class MyApp extends StatelessWidget {
final String numfiles;
const MyApp(this.numfiles, {super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: true,
home: Scaffold(
body: Center(
child: Text('Num Files =$numfiles'),
),
),
);
}
}
Основываясь на сообщениях об ошибках от Dartpad, я попытался запустить код только с одним файлом. Те же ошибки.
Вот сводка:
Телефон Android с подключением через USB-порт VSC: Код «работает»
VSC Pixel Android Симулятор: происходит сбой со следующей ошибкой:
Ошибка подключения к протоколу службы: не удалось подключиться к
http://127.0.0.1:55614/3ZabRaTXlrw=/
E/ flutter (15542): [ОШИБКА: flutter/runtime/dart_vm_initializer.cc(41)] Необработанное исключение: ClientException с SocketException: не удалось найти хост: 'listeningtogod.org' (Ошибка ОС: нет адреса, связанного с именем хоста, errno = 7), uri=https://listeningtogod.org/SermonEngage ... 080Ia.json
VSC Chrome завершается со следующей ошибкой:
Сообщение о флаттере/ Канал keyevent был отброшен до того, как его удалось
обработать.
Это происходит, когда плагин отправляет сообщения на сторону платформы до того, как платформа получит возможность зарегистрировать прослушиватель. Подробную информацию о том, как настроить канал для ожидания большего количества сообщений или ожидания отклонения сообщений, см. в документации по API ChannelBuffers:

https://api.flutter.dev/flutter/dart-ui/ ChannelBuffers-class.html
Windows на VSC. Код «работает»
Dartpad. Ошибка с сообщением, похожим на Chrome. сбой:
Сообщение на канале флаттера/жизненного цикла было отброшено до того, как его можно было обработать.
Это происходит, когда плагин отправляет сообщения на сторону платформы до того, как платформа получила возможность зарегистрировать прослушиватель. Подробную информацию о том, как настроить канал для ожидания большего количества сообщений или ожидания отклонения сообщений, см. в документации по API ChannelBuffers:
https://api.flutter.dev/flutter/dart-ui ... fers-class. html
Я прочитал документацию Channel Buffers, которая ссылается на себя для получения дополнительной информации, которая довольно глупа, но не дает решений.
Любая помощь здесь на этом?

Подробнее здесь: https://stackoverflow.com/questions/790 ... oid-simula
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»