2024-04-12
数据库
sqlite3
sqflite_common_ffi
flutter
我用flutter写了一个windows端的应用程序,这个程序因为要使用到数据库,所以引入了第三方包sqflite_common_ffi
我使用这样的命令引入的import 'package:sqflite_common_ffi/sqflite_ffi.dart';
但是当我最终使用flutter build windows
命令打包了一个exe的可执行程序之后,发现运行的时候压根儿弹不出窗口,只在后台进程显示相应的进程,因为此时我已经用的是比较新的flutter版本(3.16)了,所以跟网上流传的那个不弹出窗口的BUG其实并不一样。这里之所以不弹出来,估计是构建程序没有把数据库的动态链接库文件(使用这个sqflite_common_ffi其实用的是流传很广的那个sqlite3的功能,所以需要SQLite3.dll这个文件)打包进来,导致只有一个孤零零的flutter_windows.dll文件。只需要网上搜索这个同名的文件,下载后,把该dll文件放到exe所在的同级目录即可。
……
2024-04-12
utf-8
windows
乱码
左下角搜索控制面板,进入控制面板之后,点击时钟和区域下面的更改日期、时间或数字格式
点击顶上的“管理”选项,然后找到更改系统区域设置,把下方的Beta版:使用Unicode UTF-8提供全球语言支持(U) 这个勾选上
…
2024-04-12
flutter doctor
cmdline-tools
路径
flutter
先要到安卓studio官网下载sdkmanager的zip文件。就是那个仅限命令行工具下的一百多兆的文件。
解压之后会得到一个文件夹,里面有些bin和lib之类的文件夹,还有一两个文本文件。
先找到安装AndroidSDK的目录,如果里面没有cmdline-tools这个文件夹,就手动建立一个,cmdline-tools里面还需要建立一个latest文件夹,再把刚才这几个又是bin和lib,又是文本文件的内容复制到latest下面。
…
2024-04-12
安卓开发
android SDK路径
环境变量
这是它中文版原文:
您可以通过设置环境变量来配置 Android Studio 和命令行工具的行为。其中一个最有用的环境变量之一是 ANDROID_HOME,很多工具都会读取该变量来确定 Android SDK 安装目录。如需通过命令行运行工具,而不包含可执行文件的完整路径,请将命令搜索路径环境变量设置为包含 ANDROID_HOME/tools、ANDROID_HOME/tools/bin 和 ANDROID_HOME/platform-tools。
先说简单结论,后面的长篇大论,愿意深入了解的朋友再看。
…
2024-04-12
注释快捷键
VSCode
Alt+Shift+A
用一次就是对代码块进行注释,再用一次,就是取消该注释。
效果等效于/*我是被注释的部分*/
……
2024-04-12
解决BUG
复现BUG
排查问题
屏幕录制
使用屏幕录制软件,将整个屏幕的内容囊括进去。
屏幕上最好有IDE的调试信息。如果涉及到数据库操作,最好将数据库的可视化界面调出来(推荐使用DBeaver,免费且可设置一秒刷新一次数据库信息)。
然后开始录制程序运行的情况。
…
2024-04-12
界面重构
监视
riverpod
flutter
如图,我预期的效果是:点击删除按钮,会删除勾选项,并退出编辑状态,同时隐藏删除按钮。
实际运行效果却是只退出了编辑状态,并未隐藏删除按钮。
…
2024-04-12
调试
定位异常
exception
flutter
当运行程序出现异常的时候,虽然会定位到具体的代码,但是却指向的是flutter自带的代码,这种大段代码看起来就比较费时间。
一个有效的做法是,当出现异常后,点击vscode上方的调试错误的那个横条工具栏。里面一般在左边有一个一步一步往下运行的按钮,点击它,直到在调试控制台出现异常报错信息。
这个时候调试控制台就会很贴心地给出出错的代码是在哪个组件的哪行代码处出的问题。
…
2024-04-12
dart
必填项
有状态组件
flutter
class MyCustomWidget extends StatefulWidget {
final int sortid;
const MyCustomWidget({
……