关于开发鸿蒙APP的建议
发表于|更新于
|浏览量:
背景
实现
参考
文章作者: 今是昨非
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 今是昨非的博客!
相关推荐
2024-03-13
Xcode 15.3 Archive失败
Xcode 15.3 Archive失败背景昨晚升级 Xcode 到 15.3,今天打包的时候发现 Archive 失败,提示:Call parameter type does not match function signature!,仔细看报错里是和HandyJSON相关的提示。 解决起初以为和 Pod 库有关系,但是找同事确认后,发现低于 Xcode 15.3 的版本是可以打包成功的,但是 Xcode 15.3 的版本就报错了。然后搜索HandyJSON Call parameter type does not match function signature!,发现了这个,Building HandyJSON in Swift 5.10 throws a fatal error ,是Swift 5.10 编译 HandyJSON报错了。目前HandyJSON官方还未解决。 暂时的解决方法是: 在 Pod 的 Target 中找到 HandyJSON, 然后设置Optimization Level为 None和No Optimization,如下图: 然后再次尝试 A...
2024-11-19
国行Mac 开启 Xcode inteligence 提示
背景电脑国行 Mac M1,内存 16G,版本 Sequoia 15.1,Xcode 16.1,在Xcode 设置中,Text Editing 下,Editing Tab下,能看到有个设置Predictive code completion,但是默认是关闭的, 国行的提示不支持,这里说的是怎么开启这个,亲测开启成功。 最终效果如下: 步骤参考XcodeLLMEligible,我用的是不 disable sip 的方式。 首先,在终端中,输入下面命令: 12345678# Override XcodeLLM onlycurl -L https://raw.githubusercontent.com/Kyle-Ye/XcodeLLMEligible/release/0.2/scripts/override.sh | bash -s -- install override xcodellm# Override Apple Intelligence onlycurl -L https://raw.githubusercontent.com/Kyle-Ye/XcodeLLMEli...
2022-09-05
Carthage使用
背景之前一直用CocoaPods,这次做编译时间优化时,把某些Pod依赖的库改为了Carthage依赖的,这里记录一下Carthage的使用。 使用安装使用brew安装,简单方便 1brew install carthage 使用在项目所在文件夹,即.xcodeproj所在的文件夹下,创建Cartfile 1touch Cartfile 然后打开Cartfile 1open Cartfile -a Xcode 添加要依赖的第三方库,注意依赖版本的指定,指定版本和指定范围的写法,如下: 1234567891011github "krzyzanowskim/CryptoSwift" ~> 1.4.0github "evgenyneu/keychain-swift" ~> 19.0github "ibireme/YYKit"github "ReactiveX/RxSwift" "6.5.0"github "onevcat/Kingfisher" ...
2021-07-20
iOS 键盘删除键响应
iOS 键盘删除键响应背景背景是,实现一个分享到微信,多选加输入框,点击键盘删除键,删除多选选中对象的东西。 实现由于UITextField没有删除键的代理,所以笔者最开始的想法是,通过textField:shouldChangeCharactersInRange:replacementString:来实现监听,当当前字符串为空且要替换字符串为空时,说明是点击的删除按钮,通过Block方法回掉出去,代码如下: 12345678910- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { if ((textField.text.length == 0) && (string.length == 0)) { if (self.deleteBackwardBlock) { self.deleteBa...
2023-04-06
Xcode 创建项目默认文案修改
背景最近需要修改Xcode创建项目默认文案修改,就是每次创建最上面默认生成的注释说明。想起来之前看原Raywenderlich(现在是Kodeco)网站下载的代码时,每个已存在的文件里都有一长串自定义的说明,而且新建文件的时候也是带有同样的自定义的说明,有过疑惑,但是没有仔细研究,今天研究下怎么实现的: Kodeco文件自定义的说明如下: 实现通过Customize text macros和Text macros reference 可以看出,Xcode默认头部文字注释默认定义如下: 12345678// ___FILENAME___// ___PACKAGENAME___//// Created by ___FULLUSERNAME___ on ___DATE___.// ___COPYRIGHT___// 然后参考Customizing the file header comment and other text macros in Xcode 9 可以确定修改的步骤是: 创建IDETemplateMacros.plist 添加或修改Root对应的type为...
2022-05-06
iOS Widget
iOS Widget背景一开始是发现支付宝的 Widget 做的很好看,打算仿作一个,做的过程中才发现,原来 Widget 有这么多好玩的地方。所以,在这里记录分享一下: 你知道如何创建类似于 QQ 同步助手的 Widget 吗? 你知道类似于东方财富的不同组 Widget 效果是怎么实现的吗? 你知道下图中支付宝Widget功能是怎么实现的吗? 或者这么问,对于这几个的概念:supportedFamilies、WidgetBundle以及Configurable Widget是否知晓,如果都知道,那就不需要看本篇文章了。 QQ 同步助手的Widget只显示一个Widget的效果,是设置了 Widget 的supportedFamilies只有systemMedium 样式; 东方财富的多组 Widget,是通过WidgetBundle实现的,可以设置多个Widget,每个 Widget 都可以设置自己的大中小;区分是否使用了 WidgetBundle,可以通过滑动时,Widg...
公告
This is my Blog