Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何使用Fatter和会话建立登录并注册RESTAPI_Android_Flutter_Dart - Fatal编程技术网

Android 如何使用Fatter和会话建立登录并注册RESTAPI

Android 如何使用Fatter和会话建立登录并注册RESTAPI,android,flutter,dart,Android,Flutter,Dart,我已经创建了一个带有电子邮件、密码和登录按钮的登录表单。我不熟悉飞舞、飞镖和织网 如何使用JSON作为对象,集成JSON Restfull API进行登录和注册 另外,请让我知道如何在用户登录后建立会话 如果用户已经登录,请让我知道如何跳过登录页面(通过使用flatter和Dart) 我已经创建了登录屏幕和注册屏幕,还有启动屏幕 //启动屏幕UI代码: 进口“包装:颤振/cupertino.dart”; 进口“包装:颤振/材料.省道”; 导入“包:flifter/services.dart”;

我已经创建了一个带有电子邮件、密码和登录按钮的登录表单。我不熟悉飞舞、飞镖和织网

如何使用JSON作为对象,集成JSON Restfull API进行登录和注册

另外,请让我知道如何在用户登录后建立会话

如果用户已经登录,请让我知道如何跳过登录页面(通过使用flatter和Dart)

我已经创建了登录屏幕和注册屏幕,还有启动屏幕

//启动屏幕UI代码:
进口“包装:颤振/cupertino.dart”;
进口“包装:颤振/材料.省道”;
导入“包:flifter/services.dart”;
导入“package:interview/myhomepage.dart”;
导入“包:面试/注册.dart”;
类SplashScreen扩展StatefulWidget{
@凌驾
_SplashScreenState createState()=>new_SplashScreenState();
}
const TextStyle TextStyle=TextStyle(
颜色:颜色,白色,
fontFamily:“OpenSans”,
);
类的状态扩展了状态
使用SingleTickerProviderStateMixin{
动画控制器;
动画;
@凌驾
void initState(){
super.initState();
控制器=动画控制器(
持续时间:持续时间(毫秒:2000),
vsync:这个,,
);
动画=Tween(开始:0.0,结束:1.0)。动画(控制器)
…addListener(){
setState((){});
});
controller.forward();
}
@凌驾
无效处置(){
super.dispose();
controller.dispose();
}
最终背景=容器(
装饰:盒子装饰(
图像:装饰图像(
image:AssetImage('assets/images/background.jpg'),
适合:BoxFit.cover,
),
),
);
最终不透明度=容器(
颜色:颜色(0xAA72F1CF),
);
小部件按钮(字符串标签、函数onTap){
返回新的FadeTransition(
不透明度:动画,
子:新幻灯片转换(
位置:二者之间(开始:偏移(0.0,-0.6),结束:偏移。零)
.设置(控制器)动画,
儿童:材料(
颜色:颜色(0xBB00D699),
边界半径:边界半径。圆形(30.0),
孩子:InkWell(
onTap:onTap,
splashColor:Colors.white24,
highlightColor:Colors.white10,
子:容器(
填充:边缘组。对称(垂直:13.0),
儿童:中心(
子:文本(
标签,
样式:textStyle.copyWith(fontSize:18.0),
),
),
),
),
),
),
);
}
@凌驾
小部件构建(构建上下文){
SystemChrome.setPreferredOrientations(
[设备定向。肖像向上,设备定向。肖像向下];
最终徽标=新的缩放转换(
比例:动画,
子:Image.asset(
“assets/images/logo.png”,
宽度:100.0,
高度:100.0,
),
);
最终描述=新的FadeTransition(
不透明度:动画,
子:新幻灯片转换(
位置:吐温(开始:偏移(0.0,-0.8),结束:偏移。零)
.设置(控制器)动画,
子:文本(
“受访者社交网络”,
textAlign:textAlign.center,
样式:textStyle.copyWith(fontSize:24.0),
),
),
);
最终分隔符=新的音量转换(
不透明度:动画,
孩子:排(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
容器(
宽度:20.0,
身高:2.0,
颜色:颜色,白色,
),
填充物(
填充:边缘组。对称(水平:8.0),
子:文本(
或",,
风格:textStyle,
),
),
容器(宽度:20.0,高度:2.0,颜色:彩色。白色),
],
),
);
最终signWith=新的FadeTransition(
不透明度:动画,
孩子:排(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
正文(
'使用登录',
风格:textStyle,
),
手势检测器(
onTap:(){
打印(“谷歌”);
},
子:文本(
“谷歌”,
样式:textStyle.copyWith(
颜色:颜色(0xFFE65100),
fontWeight:fontWeight.bold,
字体大小:18.0,
),
),
),
文本('或',样式:textStyle),
手势检测器(
onTap:(){
打印(“Facebook”);
},
子:文本(
“Facebook”,
样式:textStyle.copyWith(
颜色:颜色(0xFF01579B),
fontWeight:fontWeight.bold,
字体大小:18.0,
),
),
),
],
),
);
final guestContinue=新的时尚转换(
不透明度:动画,
孩子:排(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
文本('Wana跳过登录?',
样式:textStyle.copyWith(
颜色:颜色,白色,
字体大小:18.0,
fontWeight:fontWeight.bold,
)),
手势检测器(
onTap:(){
印刷品(“客人”);
},
子:文本(
“点击这里!”,
样式:textStyle.copyWith(
颜色:颜色(0xBB009388),
字体大小:18.0,
fontWeight:fontWeight.bold,
装饰:文本装饰。下划线),
),
),
],
),
);
返回脚手架(
主体:堆栈(
fit:StackFit.expand,
儿童:[
背景,,
绿色不透明,
新安全区(
孩子:填充(
衬垫:
常数边缘集
onTap: () async {
           String urL ="Here put your API Link"
           //Example: "https://Mywebsite/api/values/" +_mailController.text +"/" + _passController.text;
           var reponse = await http.get(urL,
           headers: {"Accept": "application/json"});
           var data = json.decode(reponse.body);
}