【发布时间】:2020-12-09 12:30:14
【问题描述】:
我有一个 Flutter 应用,我在其中实现了 agora。该应用程序在调试模式下运行良好,但在我结束通话时在发布模式下崩溃。这个想法是结束通话并显示一个包含通话时长和其他详细信息的对话框。应用程序在显示对话框之前崩溃。在调试模式下工作正常显示对话框,但在发布模式和应用程序崩溃时不显示。存储库将日志存储为未来的记录,它工作正常并按预期返回数据。我不知道我做错了什么。
我已经被困在这太久了,任何帮助或指导将不胜感激。谢谢
以下代码是当我单击结束按钮终止通话时
Future<dynamic> _onCallEnd(BuildContext context) async {
setState(() { // some states for ui
isStopped = true;
hostOnline = false;
});
callEndLog(); // creating a log
}
Future<dynamic> callEndLog() async {
await _con.callEndLog();
}
下面是我的控制器
callEndLog() async{
await videoCallRepo.callEndLog().then((value) {
if(value != null){
showDialog(
barrierDismissible: false,
context: context,
builder: (BuildContext context) {
return TerminateChatPopup(
// some params
);
},
);
}
});
}
以下是我的回购
Future<dynamic> callEndLog() async{
final String apiUrl = "${GlobalConfiguration().getValue('api_base_url')}contact-complete/video";
final client = new http.Client();
Map data = {
// some data
};
String body = json.encode(data);
final response = await client.post(
apiUrl, headers: {HttpHeaders.contentTypeHeader: 'application/json'},body: body,
);
if(response.body!=null){
var bodyRes = json.decode(response.body);
if(bodyRes['success']){
return bodyRes;
} else {
throw Exception('Some issues found');
}
}
}
【问题讨论】:
标签: android flutter dart agora.io