Изменить: В папке lib моего проекта есть два файла. main.dart и Insert_contact.dart. Когда я создаю проект, ожидается, что новый контакт будет добавлен к контактам в эмуляторе, а имя группы будет отображаться в поле метки.
Файл main.dart:
Код: Выделить всё
import 'package:myapp/insert_contact.dart';
import 'package:flutter/material.dart';
import 'package:flutter_contacts/flutter_contacts.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
home: InsertContact(),
);
}
}
Код: Выделить всё
import 'package:flutter/material.dart';
import 'package:flutter_contacts/contact.dart';
import 'package:flutter_contacts/flutter_contacts.dart';
class InsertContact extends StatefulWidget {
const InsertContact({super.key});
@override
State createState() => _InsertContactState();
}
class _InsertContactState extends State {
@override
void initState() {
super.initState();
_insertContact();
}
Future _insertContact() async {
if (!await FlutterContacts.requestPermission()) {
} else {
final newContact = Contact()
..displayName ='Ehsan Zarei'
..name.first = 'Ehsan'
..name.last = 'Zarei'
..phones = [Phone('123456789')]
..groups= [Group('444', 'Edu')];
await newContact.insert();
print(newContact);
}
}
@override
Widget build(BuildContext context) {
return const Placeholder();
}
}
Код: Выделить всё
I/flutter ( 7976): Contact(id=, displayName=Ehsan Zarei, thumbnail=null, photo=null, isStarred=false, name=Name(first=Ehsan, last=Zarei, middle=, prefix=, suffix=, nickname=, firstPhonetic=, lastPhonetic=, middlePhonetic=), phones=[Phone(number=123456789, normalizedNumber=, label=PhoneLabel.mobile, customLabel=, isPrimary=false)], emails=[], addresses=[], organizations=[], websites=[], socialMedias=[], events=[], notes=[], accounts=[], groups=[Group(id=444, name=Edu)])

Подробнее здесь: https://stackoverflow.com/questions/790 ... ew-contact