问题描述
我是 Flutter 的新手,我正在尝试从 google 联系人中获取电子邮件地址,但它没有显示电子邮件地址。但是每当我输入姓名和电话号码时,它都会正确显示。这是我的代码和输出日志文件
import 'google_class_model.dart';
class LoginScreen extends StatefulWidget {
@override
_LoginScreenState createState() => _LoginScreenState();
}
class _LoginScreenState extends State<LoginScreen> {
GoogleSignIn _googleSignIn;
GoogleSignInAccount _currentUser;
Future getUserContacts() async {
final host = "https://people.googleapis.com";
final endPoint = "/v1/people/me/connections?personFields=emailAddresses";
final header = await _currentUser.authHeaders;
print("loading contact");
var request = await http.get("$host$endPoint",headers: header);
print("Loading completed");
if (request.statusCode == 200) {
print("Api working perfect");
setState(() {
print(request.body);
});
} else {
print("Api got error");
print(request.body);
}
}
@override
initState() {
super.initState();
_googleSignIn = GoogleSignIn(scopes: [
"https://www.googleapis.com/auth/contacts",]);
_googleSignIn.onCurrentUserChanged.listen((user) {
setState(() {
_currentUser = user;
});
if (user != null) {
getUserContacts();
print(_currentUser.displayName);
}
});
}
这是我的日志文件。
I/Flutter ( 9273): Api working perfect
I/Flutter ( 9273): {
I/Flutter ( 9273): "connections": [
I/Flutter ( 9273): {
I/Flutter ( 9273): "resourceName": "people/c3630441151529736836",I/Flutter ( 9273): "etag": "%EgUBCT43LhoEAQIFByIMNjU4OWJSbVNrZG89"
I/Flutter ( 9273): },I/Flutter ( 9273): {
I/Flutter ( 9273): "resourceName": "people/c6213163730766920067",I/Flutter ( 9273): "etag": "%EgUBCT43LhoEAQIFByIMMWwyd0ZiZ1pQMU09"
I/Flutter ( 9273): },
谁有解决办法请告诉我
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)