【发布时间】:2020-10-24 05:20:49
【问题描述】:
我还不明白这个框架,你能帮忙解决这个错误吗?我正在尝试获取基本的用户数据 enter image description here
扑扑医生:
[!] Android 工具链 - 为 Android 设备开发(Android SDK 版本 30.0.0) !不接受某些 Android 许可证。要解决此问题,请运行: 颤振医生 --android-licenses [!] Android Studio (4.0 版) X Flutter 插件未安装;这增加了 Flutter 特定的 功能。 X Dart 插件未安装;这增加了 Dart 特定的 功能。 [√] 已连接设备(1 个可用)
!医生发现了 2 类问题。
import 'package:dio/dio.dart';
import 'package:flutter/material.dart';
import 'constants.dart';
import 'package:simple_auth/simple_auth.dart' as simpleAuth;
import 'package:simple_auth_flutter/simple_auth_flutter.dart';
class Inst_Login extends StatefulWidget {
Inst_Login({Key key}) : super(key: key);
@override
_Inst_LoginState createState() => _Inst_LoginState();
}
class _Inst_LoginState extends State<Inst_Login> {
String _errorMsg;
Map _userData;
final simpleAuth.InstagramApi _igApi = simpleAuth.InstagramApi(
"instagram",
Constants.igClientId,
Constants.igClientSecret,
Constants.igRedirectURL,
scopes: [
'user_profile', // For getting username, account type, etc.
'user_media', // For accessing media count & data like posts, videos etc.
],
);
@override
void initState() {
super.initState();
SimpleAuthFlutter.init(context);
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Instagram Basic Display API Demo'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Visibility(
visible: _userData != null,
child: Text(
_userData.keys.fold(
'', (kvText, key) => kvText + "$key: ${_userData[key]} \n"),
textAlign: TextAlign.center,
),
replacement:
Text("Click the button below to get Instagram Login."),
),
FlatButton.icon(
icon: Icon(Icons.input),
label: Text(
"Get Profile Data",
),
onPressed: _loginAndGetData,
color: Colors.pink.shade400,
),
if (_errorMsg != null) Text("Error occured: $_errorMsg"),
],
),
),
);
}
Future<void> _loginAndGetData() async {
_igApi.authenticate().then(
(simpleAuth.Account _user) async {
simpleAuth.OAuthAccount user = _user;
var igUserResponse =
await Dio(BaseOptions(baseUrl: 'https://graph.instagram.com')).get(
'/me',
queryParameters: {
// Get the fields you need.
// https://developers.facebook.com/docs/instagram-basic-display-api/reference/user
"fields": "username,id,account_type,media_count",
"access_token": user.token,
},
);
setState(() {
_userData = igUserResponse.data;
_errorMsg = null;
});
},
).catchError(
(Object e) {
setState(() => _errorMsg = e.toString());
},
);
}
}
【问题讨论】:
标签: flutter