Я ищу простой пример флаттера кнопки с повышенными правами с http-запросом (onPressed), открывающим жестко закодированный URL-адрес. Мне не нужен ответ. Мне не нужно, чтобы появилось окно браузера. Целевая ОС — Android. Заранее спасибо. UPD: вывод мне не нужен. Просто нужно открыть URL-адреса, такие как https://autoremotejoaomgcd.appspot.com/sendmessage?key=SECRET_KEY&message=test, чтобы запускать задачи Tasker (приложение для Android).
РЕШЕНИЕ:
import 'package:http/http.dart' as http;
The button:
Expanded(child: ElevatedButton(child: const Text('Flashlight on'), onPressed: () {const url = 'https://autoremotejoaomgcd.appspot.com/sendmessage?key=SECRET_KEY&message=flashlight%20on';_launchHTTP(url);},),)
The function:
void _launchHTTP(String url) async {
var response = await http.get(Uri.parse(url));
print('Response status: ${response.statusCode}');
print('Response body: ${response.body}');
}
для http-запроса во флаттере перейдите по этой официальной ссылке — docs.flutter.dev/cookbook#networking
я использовал «пакет импорта: url_launcher/url_launcher.dart»; чтобы открыть URL-адреса Tasker, такие как «tasker://assistantactions?task=task_name». Это работает. Но он открывает окно браузера, если я открываю URL-адрес http. Я должен использовать «импорт пакета: http/http.dart» как http; сейчас...
выше url_launcher используйте для открытия панели задач, открытых приложений из наших приложений или веб-просмотра для загрузки URL-адреса. пожалуйста, обновите свой вопрос с помощью кода с ожидаемым результатом.
У меня еще нет http-кода. Я нахожу только примеры, ожидающие ответа с «Будущим». Мне нужно только открыть URL-адрес в фоновом режиме
Проверьте этот пакет.
Ага. На странице http package есть несколько простых примеров. Спасибо
Что вам нужно, так это техника обратного вызова на основе сервера. Это невозможно сделать на стороне клиента.
Я обновил вопрос рабочим решением!
import 'package:http/http.dart' as http;
The button:
Expanded(child: ElevatedButton(child: const Text('Flashlight on'), onPressed: () {const url = 'https://autoremotejoaomgcd.appspot.com/sendmessage?key=SECRET_KEY&message=flashlight%20on';_launchHTTP(url);},),)
The function:
void _launchHTTP(String url) async {
await http.get(Uri.parse(url));
}
пожалуйста, поделитесь своим кодом с тем, что вы пытаетесь, и какой ожидаемый результат вы хотите.