- 博客(48)
- 收藏
- 关注
原创 Mac 搭建 Vue 开发环境
在 Mac 上搭建 Vue 开发环境,核心是装好 (自带 npm),再全局安装 Vue 脚手架,就能创建和运行项目了。推荐用 管理工具,省心不少。
2026-10-11 18:06:12
299
原创 Python 学习笔记:数据库迁移工具 Alembic
是 SQLAlchemy 官方推出的,核心作用是把数据库表结构的变更(建表、加列、改类型、加索引等)纳入版本控制,让你在不同环境(开发/测试/生产)里能重复、安全地把数据库升级或回滚到指定版本。。
2026-10-04 13:11:27
349
原创 Python 开发笔记:配置生产环境中 Celery Worker 的独立进程启动方式
生产环境中,Celery Worker 必须作为独立进程运行,否则会导致资源竞争、信号处理异常及性能瓶颈。中直接启动 Celery Worker 仅适用于。在 FastAPI 的。在根目录创建脚本文件。
2026-10-01 18:29:49
71
原创 用 Render 快速部署网站和常见问题解决
用 部署网站,核心思路就是把代码推到 GitHub,然后在 Render 上连接仓库,它会自动完成构建和上线。根据你的项目类型(纯静态还是带后端),步骤稍有不同。
2026-09-28 18:30:39
262
原创 Python 学习笔记:SQLModel 使用外键关联查询数据
定义 Team 模型(“一方”):和普通模型一样,主键用。定义 Hero 模型(“多方”):在team_id字段上用指定外键,team是数据库中的表名(小写),不是模型类名Team。添加 Relationship 属性:在两边分别用建立双向关系,这样就能通过hero.team或直接访问关联数据。name: str。
2026-09-27 17:01:31
242
原创 Flutter 开发笔记:share_plus 分享插件
是 Flutter 官方的跨平台分享插件,用来调起系统分享面板,支持文本、链接和文件分享,目前最新版本是 (截至 2026 年 9 月)。。
2026-09-13 11:39:40
290
原创 Flutter 开发笔记:用 GetX 做国际化
用 GetX 做国际化,核心就三步:建翻译文件,在里配置,界面上用.tr取文本。切换语言时调用,界面会响应式更新,不用重启 App。
2026-09-06 05:15:49
261
原创 I18n 多语言切换
i18n是一个专门用于处理多语言的插件,其义来自于(国际化),取其首尾两个字母i和n,中间部分刚好18个字母, 故被起名i18n。此插件需要通过npm下载方可使用。上面我们在main.js通过import引入了两个语言包,一般来说,需要多少种语言,就要有多少个语言包。// en.jslang: {lang: {hello: '喂,你好',将语言包配置的的代码新建了一个文件index.js后再引入mian.jsimport {createI18n。
2025-08-21 15:20:35
361
原创 uni-app 学习笔记:使用深度选择器修改第三方库组件的样式
深度选择器是一种CSS选择器,用于穿透组件的样式隔离机制,使得父组件能够选中并修改子组件内部的DOM元素样式。在uni-app中,由于默认启用了样式隔离,直接使用普通CSS选择器往往无法选中子组件内部的元素,这时就需要使用深度选择器。
2025-07-17 00:26:12
952
原创 uni-app 学习笔记:Vuex 持久化数据
uni-app 支持使用 Vuex 进行全局状态管理,可以将应用程序的共享状态存储在 Vuex 中,以便在整个应用程序中进行共享和访问。Vuex 是专门为 Vue.js 设计的状态管理库,以利用 Vue.js 的细粒度数据响应机制来进行高效的状态更新。则是传入的数据(登录App后需要持久化的用户信息)。{'id': '1', 'nickname': '张三'}这样就完成了将数据存储到 Vuex 的。是 Vuex 提供的方法,用于提交一个。是 Vuex 中的状态对象,而。数据改变的唯一方法就是。
2025-07-15 15:30:05
534
原创 快速集成 Flutter Shorebird 热更新
Flutter是一种云端代码推送服务,可以让开发者在几分钟内集成,无需修改代码即可将更新推送到任何 Dart 代码。支持所有 Android 和 iOS 设备,并符合 App Store 和 Play Store 的规定。Shorebird 最大的优点是无代码侵入,快速集成,设计优秀。
2025-05-02 10:36:56
1952
转载 推送证书 Apple Push Services 不受信任的解决办法
为苹果平台开发的苹果开发者计划和苹果开发者企业计划的成员需要下载更新的证书,并遵循以下说明。苹果开发者企业计划的成员需要在所有使用2020年9月1日之后生成的企业iOS分发证书进行代码签名的机器上安装续订的证书。苹果全球开发者关系中级证书的版本将于2023年2月7日到期,续订版本将于2030年2月20日到期。对于2021年1月28日之后生成的所有软件签名证书,由在Xcode中拥有个人帐户的开发人员和iOS大学开发人员计划成员提供的,也需要进行此更新。下载后,导入一下即可解决不受信任的问题,亲测有效~
2024-11-02 12:09:13
1052
转载 集成极光推送
插件版本 >= 0.0.8 android 端支持在 setup 方法中动态设置 channel,动态设置的 channel 优先级比 manifestPlaceholders 中的 JPUSH_CHANNEL 优先级要高。addEventHandler 方法建议放到 setup 之前,其他方法需要在 setup 方法之后调用。极光推送,英文简称JPush,是免费的第三方消息推送服务,官方也推出了众多平台的SDK及插件。在注册推送前,可以先添加上通知的权限申请,权限申请成功后再进行注册。
2024-11-01 23:52:14
473
原创 安卓多渠道配置与打包
从 Flutter v1.17 开始,Flutter 命令工具增加了自定义参数的功能 --dart-define,我们可以用这个命令参数在打包或运行 App 时设置参数。这样我们就能在Flutter代码和原生代码中获取传过来的参数,从而实现多渠道功能。
2024-07-31 09:37:44
1342
1
原创 Mac电脑配置Flutter开发环境
选择macOS,然后点击下载 Stable channel(稳定版)中的最新版本,下载完成后可以移动到资源库Library中。可以看到有 Windows、macOS、Linux三种系统的下载包。进行下载,它会同时把最新版的Dart语言包也下载好。如果你的Mac芯片是Apple M2,你还需要安装。需要注意的是把/Users/XXX/flutter。下载解压后,可以拖到应用程序中。打开终端 Terminal,输入。2.打开VSCode,在。这个路径,更换为自己的。,就可以保存退出了。
2023-11-12 16:41:32
1900
转载 CocoaPods安装失败 ERROR: Error installing cocoapods: ERROR: Failed to build gem native extension
使用 Alamofire 需要基于 CocoaPods,但是在尝试安装 CocoaPods 的过程中遇到了很多问题,捣鼓了很久都失败了,最后经群里大佬的点播才安装成功,其实有的时候问题的解决方案很简单,希望这篇博文可以帮到你。
2023-09-07 18:08:14
1379
2
原创 MAC环境下打包APK
文件将存储在Flutter项目的 build/app/outputs/apk 目录中。各位可以根据自己需要及电脑配置选择合适的版本。下载成功之后,双击进行安装。检查是否安装成功,打开终端执行java -version。是因为我们在Mac中没有安装。
2023-06-14 15:48:50
1812
转载 【flutter】使用 permission_handler 配置 Android 和 iOS 的权限
flutter在插件库中有很多的关于权限配置的插件,但是就我个人而言,比较推荐使用这个插件。当我们打开 permission_handler 时候,新手小白往往会因为它的官网文档弄得一头雾水。权限配置往往涉及到 Android 和 iOS 两个方向的相关知识,有可能大多数人就只会 Android 或 iOS 某一端知识,在配置权限时会出现屡屡不生效的问题,接下来我从零到一教你如何配置吧。
2023-05-13 16:22:46
7587
转载 flutter_swiper自定义分页指示器
你可以看到这文档简直简单,就一个方法就没了,让人摸不到头脑。新建一个custom_swiper_pagination.dart(flutter2.x+card_swiper 此库是flutter_swiper的空安全版)默认是在图片内部的,因为我需要它显示在外面,因此使用了Stack组件。flutter_swiper提供了这样的能力,但是需要你自己实现。内置了2种分页指示器,一种是。
2023-04-25 10:42:23
2182
转载 Flutter GetX使用流程
新建一个People类// 第一种:直接声明变量// 第二种:构造函数var name;var age;// 声明// 使用"名字:${people.name.value},年龄:${people.age.value}",)),// 改变状态},// 声明// 使用"名字:${people.value.name},年龄:${people.value.age}",)),// 改变状态},
2023-04-11 22:58:20
4040
原创 webview_flutter加载HTML文本字体过小的解决
使用webview_flutter框架加载html代码以显示HTML文本编辑器样式的内容,发现字体太小。回调方法中加载,即可正常显示。
2022-08-25 17:45:57
3104
转载 iOS微信授权登录中UNIVERSAL LINK(通用链接)的配置
随着iOS和微信SDK版本的更新,有变化。新版本,需要配置Universal Links。没办法,填坑工作开始。UNIVERSAL LINKS介绍Seamlessly link to content inside your app, or on your website in iOS 9 or later. With universal links, you can always give users the most integrated mobile experience, even
2021-04-09 15:30:05
3047
原创 iOS苹果开发者账号申请教程
5、添加一个电话号码,这里自动识别本机号码,也可以写入其他号码,到时可以用这个号码接收登录验证码。1、打开Developer应用程序App,通过现有的账号登录,刚在手机设置登录开双重的苹果账号!2、点击付款跳转到支付绑定页面,绑定一个支付方式(支付宝、微信、银行卡都行,绑定付款后可以取消)只有苹果开发者账号才能上架App Store,苹果开发者需要年费,是苹果公司收的!2、进入设置,下拉点击退出登录当前账号,再登录需要开启双重认证的苹果账号。2、登录苹果账号后,点击现在注册进入,一直点继续!
2020-12-14 07:43:31
21782
5
转载 基于FreeStreamer实现音频播放器
前段时间根据产品经理的要求,要把H5播放音频的换成App原生的播放器,开始查了一些相关知识和博客就开始自己写了一个音频框架,不写不知道,写完才知道,缓存资源和播放的时候会遇到各种问题,各种问题,各种问题ing...刚开始自己和开发小伙伴测试的时候甚至还有崩溃发生,这吓得我有点头皮发麻...然后自己在没事的时候搜索了各大博客,也问了很多人,然后就有了现在音频播放器模型,没用的的话说的有点多了,下面进入正题主要音频框架FreeStreamer GitHub API使用文档 MobileV.
2019-01-16 14:42:51
1282
原创 如何在GitHub Desktop上传大文件
使用GitHub桌面版准备上传项目时,发现在上传的时候会有100MB的容量限制,这是项目里的某个.framework文件大小超过了100MB的警告。那么如何在GitHub桌面版上传大文件呢?这时候我们需要安装一个叫 Git LFS (Git Large File Storage) 的东西。安装方法:1.我们首先需要安装Homebrew。打开终端,苹果电脑常规安装(推荐 完全体 几分钟安装完成):/bin/zsh -c "$(curl -fsSL https://gitee.com/cu
2019-01-04 11:49:30
4762
转载 向安装包中添加设备 UDID
前言注:本文适用于只有苹果个人开发者账号、公司开发者账号、或教育开发者账号的 iOS 开发者。对于没有企业开发者账号(299$)的开发者来说,要想使用蒲公英将自己的应用分发给其他用户的 iOS 设备,只能通过将要安装设备的 UDID 添加到应用的 mobileprovision 文件中来实现。本文说明了如何正确的将 iOS 设备的 UDID 添加到应用的 mobileprovisi
2018-01-15 14:00:24
5345
原创 iOS开发 — 解决APP进入后台,定时器倒计时停止计时的问题
最近在做一个电商项目的时候遇到一个问题,就是在订单详情页显示“秒杀抢购倒计时”的时候,当APP退到后台运行一段时间后重新回到前台,倒计时显示的时间为APP退到后台那一瞬间的时间,而不是应当倒计时到的正确的时间,必须要重新进入页面刷新数据后才会显示正确的时间。原因很简单,因为iOS程序进入后台运行,程序很快就会被系统“杀死”,所以定时器会停止执行计时操作。解决方法:监听APP进入后台、回到前台的...
2017-12-29 13:10:20
3686
原创 iOS开发支付 — 内购(IAP)
为什么要使用内购?如果你购买的商品,是在本App中使用和消耗的,就一定要用内购,否则会被拒绝上线,例如:游戏币、在线书籍、直播中用来打赏用的金币、app中使用的道具等。如果是直接购买商城之类的快递包邮的那些东西,那就直接调用支付宝,微信之类的三方支付就好了。内购比较坑的一点是,内购的盈利苹果要取走30%。内购流程1、登录https://appstoreconnect.apple.com,选择进入App Store Connect。2、进入“协议、税务和银行业务”。3...
2017-12-28 12:31:36
1311
原创 类似新浪微博评论的 @ 及 #某话题# 功能的实现
TYAttributedLabel是一个强大的属性文本控件。它支持富文本、图文混排显示;它支持行间距、字间距、自适应高度、指定行数;它支持添加高度自定义文本属性,支持添加属性文本、自定义链接,新增高亮效果显示(文字和背景);它还支持添加UIImage和UIView控件。在微博信息流中点击@某人然后跳转到某人的主页,以及点击#话题#跳到相关话题页,类似于HTML中的文本链接。使用TYAttrib...
2017-12-22 12:58:16
2480
原创 定位服务在iOS11系统上不能使用的问题
今天我突然发现以前维护的项目中开发的定位功能失效,显示“用户授权失败”。这个功能在当时是能成功实现的。于是我上网查找原因,网上说是因为苹果现在增加了一项新的隐私保护 NSLocationAlwaysAndWhenInUseUsageDescription ,并且原有的 NSLocationAlwaysUsageDescription 被降级为 NSLocationWhenInUseUsageDes...
2017-12-14 17:46:48
3785
原创 iOS学习笔记 — WKWebView的使用
使用WKWebView需要引入头文件#import <WebKit/WebKit.h>初始化/**创建WKWebView*/- (WKWebView *)webViewWithSuperView:(UIView *)superView requestURLStr:(NSString *)requestStr target:(id)target andMasonryBlock:(MasonryBlock)masonryBlock{ WKWebViewConfig
2017-10-27 08:26:35
2862
原创 iOS 文字渐变色的实现
项目中需要实现的效果:实现方法:自定义CFGradientLabel继承于UILabel,实现 drawRect:方法,在该方法里面画渐变色。在 CFGradientLabel.h 里#import <UIKit/UIKit.h>@interface CFGradientLabel : UILabel@property (nonatomic,copy) NSArray *colors;@end在CFGradientLabel.m 里#impo...
2017-09-21 14:59:05
1769
原创 仿新浪微博发布时 @ 及 #某话题# 的效果
项目需要实现如下效果:我实现的思路是,监听textView的变化,然后使用正则匹配出 #话题# 和 @对象所在位置,动态设置文本的颜色,代码如下:#pragma mark - UITextViewDelegate- (void)textViewDidChange:(UITextView *)textView{ self.placeholderLbl.hidden...
2017-09-18 15:53:21
2154
原创 类和结构体
类和结构体是Swift语言的核心内容之一。在Swift语言中,类和结构体有很多相同的特性,比如都有属性、方法、下标、构造器、扩展和协议等特性,同时,类又有结构体所不具有的一些特性,例如继承、类型转换、析构和引用计数等。与Objective-C相比,Swift中的类没有.h头文件。类和结构体的基本用法类和结构体的定义语法相似,通过关键词class来引入一个类,通过struct关键词来引...
2017-07-21 22:28:10
1450
转载 十分钟学会Charles抓包(iOS的http/https请求)
Charles安装 HTTP抓包 HTTPS抓包1. Charles安装官网下载安装Charles:https://www.charlesproxy.com/download/2. HTTP抓包(1)查看电脑IP地址(2)设置手机HTTP代理手机连上电脑,点击“设置->无线局域网->连接的WiFi”,设置HTTP代理:服务器为电脑IP地址:如1...
2017-06-25 00:43:34
2869
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅