Сделал запрос в нейросети для написания кода для разработчики лаунчера для телефона
Вот что оно выдаёт:
Просто нужно создать лаунчер для телефона, так как нету всех есть пк
Вот что оно выдаёт:
Есть ли здесь какие-то ошибки.import 'package:flutter/material.dart';
import 'package:url_launcher/url_launcher.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'SAMP Launcher',
theme: ThemeData(primarySwatch: Colors.orange),
home: LauncherScreen(),
);
}
}
class LauncherScreen extends StatefulWidget {
@override
_LauncherScreenState createState() => _LauncherScreenState();
}
class _LauncherScreenState extends State<LauncherScreen> {
final TextEditingController _nicknameController = TextEditingController();
String _selectedServer = 'main'; // Может быть ip сервера
// Список серверов для примера
final servers = {
'main': '127.0.0.1:7777',
'test': '127.0.0.1:7778',
};
final forumUrl = 'https://forum.yourserver.com';
// Функция для запуска игры
Future<void> _launchGame() async {
final nickname = _nicknameController.text.trim();
if (nickname.isEmpty) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text('Введите никнейм!')),
);
return;
// Здесь можно добавить проверку на формат Имя_Фамилия
}
final serverIp = servers[_selectedServer];
final sampUrl = 'samp://connect=$serverIp?nickname=$nickname';
if (await canLaunch(sampUrl)) {
await launch(sampUrl);
} else {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text('Не удалось запустить игру. Установлена ли GTA SA?')),
);
}
}
// Функция для перехода на форум
Future<void> _openForum() async {
if (await canLaunch(forumUrl)) {
await launch(forumUrl);
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('SAMP Launcher')),
body: Padding(
padding: const EdgeInsets.all(20.0),
child: Column(
children: [
// Поле для ника
TextField(
controller: _nicknameController,
decoration: InputDecoration(labelText: 'Никнейм (Имя_Фамилия)'),
keyboardType: TextInputType.text,
),
SizedBox(height: 20),
// Выбор сервера
DropdownButtonFormField<String>(
value: _selectedServer,
items: servers.keys.map((server) {
return DropdownMenuItem<String>(
value: server,
child: Text(capitalize(server)),
);
}).toList(),
onChanged: (value) {
setState(() => _selectedServer = value!);
},
),
SizedBox(height: 30),
// Кнопка Играть
ElevatedButton(
style: ElevatedButton.styleFrom(primary: Colors.deepOrange),
onPressed: _launchGame,
child: Text('ИГРАТЬ', style: TextStyle(fontSize: 18)),
),
SizedBox(height: 15),
// Кнопка Форум
ElevatedButton(
style: ElevatedButton.styleFrom(primary: Colors.grey[800]),
onPressed: _openForum,
child: Text('ФОРУМ', style: TextStyle(fontSize: 18)),
),
],
),
),
);
}
}
Просто нужно создать лаунчер для телефона, так как нету всех есть пк