
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
执行Macaca自动化脚本时,首先需要启动一个Macaca服务器:$ macaca server --verbose参数设置启动Macaca服务器时如果没有指定端口号,服务器URL的配置参数如下:server_url = {'hostname': 'localhost','port': 3456}Android设置变量desired_c
使用Firebase控制台的分析(Analytics)功能可以帮助我们了解用户是如何使用Flutter应用程序。我们将启用捕获预定义的事件,调整应用程序以收集登录事件和发送消息的指标。数据捕获后,我们将通过Firebase控制台在仪表板中查看。要使用Firebase Analytics收集用户的数据,我们需要firebase_analytics插件。在main.dart文件中,确保导入相应的包。i
首先,我们要修复一下之前几篇文章中存在的缺陷。在发送超过两行的消息时,屏幕上显示的消息不会自动换行,会超出最大宽度。我们可以通过将Text包装在Container控件中,再添加一个width属性,使其获得一个不超出屏幕大小的宽度。class ChatMessage extends StatelessWidget {//...@overrideWidget build(BuildCo
现在,我们将使用Firebase服务将聊天消息数据存储并同步到公用共享实时数据库上的云。我们需要使用firebase_database插件,用于在Firebase数据库存储和同步消息,还需要使用firebase_animated_list插件,用于增强聊天消息列表。在main.dart文件中,确保导入相应的包。import 'package:firebase_database/firebase_d
在上一篇文章《Flutter实战一Flutter聊天应用(十五)》中,我们完成了登陆屏幕。在用户登陆成功后,会在本地创建一个LandingInformation文件,以使应用程序在启动时可以判断用户的登陆状态。在main.dart文件中,我们在main方法执行runApp之前使用existsSync方法判断LandingInformation文件是否存在。判断结果会传递给TalkcasuallyA
我们的应用程序现在已经有了一个好看的UI,但是我们还没有一个后端。所以我们要买一个云服务器,然后再安装数据库?当然不是!我们可以使用Firebase平台作为后端,那么Firebase是什么呢?Firebase一开始只是一个移动后端即服务平台,自2014年10月被Google收购后,被谷歌改造成了针对移动开发(iOS和Android)和Web开发的一个完整后端解决方案,2016年谷歌在I/O大会上推
我们可以向控件添加动画效果,使应用程序的用户体验更加流畅和直观。在这篇文章中,我们将在聊天消息列表中添加基本动画效果。当用户发送新消息时,我们不要将其简单地显示在消息列表中,我们将从列表底部垂直放置消息。Flutter中的动画被封装为包含类型值和状态(如前进、后退、完成和关闭)的Animation对象,我们可以将动画对象附加到控件或监听动画对象的更改。基于对动画对象属性的更改,框架可以修改窗口控件
在上一篇文章《Flutter实战一Flutter聊天应用(十四)》中,我们完成了注册屏幕。为了保持应用程序入口只有一个,即登陆屏幕,用户注册完成之后会返回手机号码、密码到登陆屏幕,让用户点击登陆按钮就可以直接登陆应用程序了。现在我们就来完善一下登陆屏幕。应用程序的项目已经上传到GitHub上,大家可以直接查看sign_in.dart文件的代码。我们回到sign_in.dart文件,在_SignIn
首先,我要对上一篇文章进行一点补充,在添加动画效果后,需要重新启动应用程序。使用重新启动而不是热重新加载,因为需要清除任何没有动画控制器的现有消息。目前在我们的应用程序中,即使输入字段中没有文本,也会启用“发送”按钮,我们可以根据该字段是否包含要发送的文本来决定是否启用发送按钮,并更改按钮的外观。定义_isComposing,一个私有成员变量,只要用户在输入字段中键入,该变量就是true。clas
我们的应用程序现在可以点击查看图像,但还没有实现查看时放大、缩小与移动图像。要实现这个功能,需要监听用户在图像上的操作,并调用相应的回调处理用户操作。我们先将Transform控件从_ImageZoomableState的build方法中拆分出来。在_ImageZoomableState类中添加_drawImage方法。class _ImageZoomableState extends State







