关于xcode:Xcode15与苹果ios17适配以及遇到的问题

<article class=“article fmt article-content”><p>大家好,我是你们的好敌人咕噜铁蛋!最近,苹果公布了全新的iOS17零碎,而作为开发者,咱们须要确保咱们的应用程序可能与这个新零碎完满适配。因而,明天我将和大家分享一些对于Xcode15与苹果17零碎适配的教训,并介绍一些常见的问题以及解决办法。<br/>首先,让咱们来看看如何进行适配。</p><ol><li>应用最新的Xcode版本<br/>确保你曾经降级到最新的Xcode15版本。苹果会在新版本中提供对最新零碎的反对和优化,因而应用最新的工具能够确保你可能充分利用新零碎的性能和性能。</li><li>更新依赖库和框架<br/>在适配新零碎时,查看你的我的项目所依赖的第三方库和框架是否有更新版本可用。许多库和框架的开发者通常会在新零碎公布后尽快公布相应的更新版本,以解决与新零碎兼容性相干的问题。</li><li>查看API变动<br/>苹果在每个新零碎中都可能会引入一些API变动,因而在适配过程中,仔细检查苹果的文档,理解新零碎中哪些API已被弃用、代替或新增。确保你的应用程序应用的是最新的API,并相应地更新你的代码。</li><li>适配新的用户界面<br/>新零碎通常会引入一些用户界面的变动和更新,例如新的设计语言、布局形式或者控件款式。在适配过程中,确保你的应用程序的用户界面与新零碎保持一致,提供更好的用户体验。<br/>当初,让咱们来看看可能会遇到的一些问题以及解决办法。</li><li>兼容性问题<br/>在适配过程中,你可能会遇到一些兼容性问题,特地是当你的应用程序依赖于某些特定的库或框架时。如果你遇到了这种状况,首先查看是否有更新的版本可用。如果没有,你能够尝试分割库或框架的开发者,询问他们是否有打算公布适配新零碎的更新版本。</li><li>解体和性能问题<br/>新零碎的公布可能会引入一些解体或性能问题,这可能是因为零碎自身的问题或者你的应用程序在新零碎上的不兼容性导致的。如果你遇到了这些问题,倡议你先降级到最新的Xcode版本,并仔细检查你的代码,特地是与新零碎相干的局部。如果问题依然存在,你能够尝试应用调试工具来定位问题,并及时向苹果报告这些问题,以取得更好的反对和解决方案。</li><li>用户界面适配问题<br/>新零碎可能会引入一些用户界面的变动,例如新的字体、色彩或者控件款式。在适配过程中,确保你的应用程序的用户界面与新零碎保持一致,以提供更好的用户体验。你能够通过更新你的应用程序的主题、调整布局或者应用新的控件款式来实现界面适配。<br/>通过应用最新的Xcode版本、更新依赖库和框架、查看API变动以及适配新的用户界面,咱们能够确保咱们的应用程序与苹果17零碎完满适配。同时,在解决兼容性问题、解体和性能问题以及用户界面适配问题时,咱们应该采取相应的措施,并及时向苹果反馈问题,以取得更好的反对。<br/>心愿这篇文章对你有所帮忙。如果你有其余对于Xcode15与苹果17零碎适配的问题,欢送在评论区留言,咱们一起交流学习吧!感激大家的浏览,咱们下期再见!</li></ol></article>

February 27, 2024 · 1 min · jiezi

关于xcode:iOS逆向与安全使用ollvm混淆你的源码

前言当你在钻研他人源码的时候,是不是冀望着他人代码没有进行任何的防护和混同。这时的你,是不是应该考虑一下本人代码的平安.本篇文章将通知你,如何应用ollvm来混同iOS端的代码【此文为入门贴,大佬请绕道】。 一、指标编译ollvm工具,并在Xcode中来混同你的ipa或动静库,减少他人破解你源码的难度。 二、工具ollvm:下载地址:https://github.com/heroims/ob...Xcode13:iOS开发工具 三、步骤1、基础知识LLVMLLVM(Low Level Virtual Machine)是一个开源的编译器基础架构,它蕴含了一组模块化、可重用的编译器和工具,反对多种编程语言和指标架构,包含x86、ARM和MIPS等。LLVM最后由美国伊利诺伊大学香槟分校(University of Illinois at Urbana–Champaign)的Chris Lattner传授开发,当初由LLVM社区进行保护和倒退。LLVM的核心思想是将编译器分为前端和后端两个局部,前端负责将源代码转换为两头示意(IR),后端负责将两头示意转换为指标机器的汇编代码。这种设计使得LLVM能够反对多种编程语言,因为只须要为每种语言编写一个前端,就能够利用后端的通用性反对多种指标架构。除了编译器之外,LLVM还包含了一些工具,例如优化器、调试器、汇编器和反汇编器等,这些工具能够帮忙开发者更好地剖析和调试程序,进步代码的性能和可靠性。LLVM曾经成为了宽泛应用的编译器基础架构,许多编程语言和工具链都采纳了LLVM作为后端,例如C、C++、Objective-C、Swift、Rust、Go等。LLVM还被广泛应用于计算机体系结构钻研、代码安全性剖析、机器学习等畛域。 ClangClang是基于LLVM框架的C、C++、Objective-C和Objective-C++编译器,它是一个开源我的项目,由LLVM社区进行开发和保护。Clang的设计指标是提供高质量的诊断、疾速的编译速度、低内存占用和良好的可移植性。Clang的编译器前端应用了古代的编译器架构,包含基于词法分析器和语法分析器的语法分析,生成形象语法树(AST)并进行类型检查和语义剖析等步骤。这些步骤的优化和并行化使得Clang可能疾速地进行编译,同时提供了更好的谬误和正告信息,有助于开发者更快地发现和修复代码中的问题。除了作为独立的编译器之外,Clang还能够作为其余工具的库应用,例如动态剖析工具、编辑器插件和代码重构工具等。Clang的模块化设计和良好的API使得它能够轻松地被集成到其余工具中,从而提供更好的编程体验。因为Clang的优良性能和良好的设计,它曾经成为了许多我的项目的首选编译器,例如LLVM本身、macOS和iOS的默认编译器等。同时,许多开发者和组织也在踊跃地开发和奉献Clang的代码,使得它在将来仍有广大的倒退空间。 OLLVMOLLVM(Obfuscator-LLVM)是基于LLVM框架的混同器,它能够对程序进行混同以进步程序的安全性。OLLVM的设计指标是提供一种灵便的、可定制的混同计划,使得攻击者更难了解和分析程序的行为。OLLVM通过对程序进行多种混同操作来实现混同成果,例如代码替换、函数内联、控制流平坦化、加密等。这些混同操作能够改变程序的控制流图和数据流图,使得程序更难以被了解和逆向剖析。同时,OLLVM还提供了一些额定的平安机制,例如加密程序的字符串、应用栈爱护和地位无关代码等,以减少程序的安全性。因为OLLVM是基于LLVM框架开发的,它能够与现有的LLVM工具和编译器集成,例如Clang和LLDB等。这使得开发者能够轻松地在现有的开发环境中应用OLLVM,并且能够应用现有的工具对混同后的程序进行调试和剖析。只管OLLVM的次要目标是进步程序的安全性,但它也能够用于其余畛域,例如代码爱护、代码压缩和代码优化等。因为其灵活性和可定制性,OLLVM曾经被广泛应用于许多畛域,例如网络安全、游戏开发和金融等。IR之间的pass,就是混同器工作的中央。相干代码位于obfuscator/llvm/lib/Transforms/Obfuscation/ 2、编译ollvm命令如下: witchan@witchandeMacBook-Air ~ % git clone -b llvm-13.x https://github.com/heroims/obfuscator.gitwitchan@witchandeMacBook-Air ~ % $cd obfuscatorwitchan@witchandeMacBook-Air ~ % mkdir buildwitchan@witchandeMacBook-Air ~ % cd buildwitchan@witchandeMacBook-Air ~ % cmake -DCMAKE_BUILD_TYPE=Release -DLLVM_CREATE_XCODE_TOOLCHAIN=ON -DLLVM_ENABLE_PROJECTS="clang;libcxx;libcxxabi" -DLLVM_ENABLE_NEW_PASS_MANAGER=OFF ../llvmwitchan@witchandeMacBook-Air ~ % make -j8witchan@witchandeMacBook-Air ~ % sudo make install-xcode-toolchainwitchan@witchandeMacBook-Air ~ % mv /usr/local/Toolchains /Library/Developer/注:make -j8这命令编译的快慢,取决于你的硬件设施挨个执行以上命令后,ollvm就编译并装置实现,成果如下: 3、混同命令及成果比照混同命令简介fla:该选项应用函数级别的混同来暗藏程序的构造。这通过随机重命名函数、增加不必要的控制流和删除调用的函数来实现。这减少了反编译和剖析代码的难度。bcf:该选项应用基本块级别的混同来暗藏代码的构造。这通过扭转基本块之间的控制流、增加不必要的基本块和移除基本块之间的条件分支来实现。sub:该选项应用字符串混同来暗藏代码中的常量字符串。这通过将字符串分成几个小块、将其存储在数组中并在运行时重新组合来实现。这使得剖析代码和查找敏感信息更加艰难。split:该选项应用控制流混同来减少程序的复杂性。这通过将函数分成几个基本块、增加随机的跳转指令和在运行时随机重组这些基本块来实现。这使得代码的流程更难以跟踪,从而减少了破解和反编译的难度。sobf:该选项应用源代码混同技术来暗藏代码的逻辑和构造。这通过应用相似加密的形式对代码进行变换,使其难以了解和剖析。这能够通过运行时解密来执行,从而暗藏代码的实在性能。示例代码如下: - (void)testMethod { NSString *name = @"wit"; int age = 18; NSArray *list = @[@1,@3,@5,@18]; for (int i=0; i<list.count; i++) { int value = [list[i] intValue]; if (value == age) { age += 10; name = @"chan"; } } NSLog(@"name = %@", name); NSLog(@"age = %d", age);}未应用混同: ...

February 27, 2023 · 8 min · jiezi

关于xcode:虚拟机的防火墙处理

每过段时间就要去网上搜一下,还不如放我本人这儿,省的去试错。查看firewall服务状态:systemctl status firewalld开启:service firewalld start重启:service firewalld restart敞开:service firewalld stop一劳永逸:systemctl disable firewalld.service

November 2, 2022 · 1 min · jiezi

关于xcode:csm移动端h5用什么样的视觉方案

我的项目需要求在挪动端H5须要展现一些数据统计的图表,尽管第一工夫想到的是echarts,常 用还有Highcharts,D3等,antv家族的图表UI难看一些,再加上F2是挪动端可视化计划于是 就抉择F2,关上官网果然眼前一亮F2提供的正能满足需要,F2官网地址: https://antv.alipay.com/zh-cn...首次应用记录一下掘坑之路: 一,疾速上手(此处参考官网api文档就能够实现 https://www.yuque.com/antv/f2/getting-started)1.习惯在vue外面应用cnpm装置,执行 cnpm install @antv/f2 --save  2.装置实现之后就是应用了,依据api提供的援用形式在vue外面是玩不转的,波及到图表 交互的须要点击的图表会报js谬误( 'interaction' is not a function),当然也不是 没有解决的方法的,看过源码会发现能够批改援用门路解决:const F2 = require('@antv/f2/lib/index')复制代码二,开始应用应用也特地的简略,官网api给到 的十分的具体,首先须要创立 <canvas> 标签,咱们就能够进行简略的图表绘制:创立 Chart 图表对象,指定图表 ID、指定图表的宽高、边距等信息;载入图表数据源;应用图 形语法进行图表的绘制;渲染图表。在官网demo中抉择相应本人想要的图表能够查看到代 码,利用到vue我的项目中就能够了,依据需要作相应的更改。 至此就能够看到成果了,是不是很简略大厂的货色就是香,真正做到了开箱即用 

October 14, 2022 · 1 min · jiezi

关于xcode:Xcode13-适配之打印启动时间

Xcode13上统计启动时长的变量DYLD_PRINT_STATISTICS生效了。团队中须要保留每次的启动工夫以作测验优化规范。在网上找到上面文章,写了个获取启动工夫工具类。 import "AppLaunchTime.h" import <sys/sysctl.h> import <mach/mach.h> @implementation AppLaunchTime double __t1; // 创立过程工夫 double __t2; // before main double __t3; // didfinsh /// 获取过程创立工夫 (CFAbsoluteTime)processStartTime { if (__t1 == 0) { struct kinfo_proc procInfo; int pid = [[NSProcessInfo processInfo] processIdentifier]; int cmd[4] = {CTL_KERN, KERN_PROC, KERN_PROC_PID, pid}; size_t size = sizeof(procInfo); if (sysctl(cmd, sizeof(cmd)/sizeof(*cmd), &procInfo, &size, NULL, 0) == 0) { __t1 = procInfo.kp_proc.p_un.__p_starttime.tv_sec * 1000.0 + procInfo.kp_proc.p_un.__p_starttime.tv_usec / 1000.0; }} ...

December 10, 2021 · 1 min · jiezi

关于xcode:iOS平台-快速集成华为AGC认证服务

介绍如何让用户依据已有的账号来进行登录注册呢?在利用中集成华为AGC认证服务SDK来轻松疾速地实现这个性能。 本篇内容依据官网文档领导集成过程总结实现,对于集成步骤,官网的材料写的有点多,当初我总结一下步骤: 1、开明华为认证服务 2、在iOS我的项目中集成SDK 3、设计登录注册页面 4、开启认证形式 5、注册登录性能开发 6、打包测试 开明华为认证服务在AppGallery Connect页面点击"我的我的项目",在我的项目的利用列表中抉择须要开明认证的利用,导航抉择"构建 > 认证服务"。如果是首次应用认证服务,请点击"立刻开明"开明服务。 集成SDK针对Xcode开发环境,您能够通过Cocoapods集成形式将认证 SDK集成到您的Xcode开发环境中。 1. 在Xcode我的项目中增加以后利用的AppGallery Connect配置文件。1) 登录AppGallery Connect网站,点击“我的我的项目”。 2) 在我的项目列表中找到您的我的项目,在我的项目下的利用列表中抉择您须要集成SDK的利用。 3) 点击“我的项目设置”中“利用”栏下的“agconnect-services.plist”下载配置文件。 4) 将“agconnect-services.plist”文件拷贝到利用级根目录下。 ## 2. 创立Podfile文件。 关上命令行窗口,导航至Xcode我的项目所在的地位,创立Podfile文件。如果曾经存在,可跳过本步骤。 cd project-directorypod init3. 编辑Podfile文件。1) 集成认证SDK 编辑Podfile文件,减少pod依赖pod ‘'AGConnectAuth'。 target 'AGConnectAuthDemo' do pod 'AGConnectAuth' end2) 执行 pod install,而后关上.xcworkspace文件查看该我的项目。 # 界面设计本次Codelab中您能够在Xcode工程中创立一个布局页面,参照下图进行UI设计,通过手机号、邮箱账号进行注册登录。 开启认证形式1. 登录AppGallery Connect网站,点击“我的我的项目”。2. 在我的项目列表中找到您的我的项目,在我的项目下的利用列表中抉择您的利用。3. 在“构建”栏下找到“ 认证服务”,在"认证形式"页签下“操作”一栏里,点击启用手机号码、邮箱地址。 注册登录性能开发1. 在将故事板的控件关联到ViewController中,以便您通过输入框取得登录注册所需的参数。 @IBOutlet weak var phoneText: UITextField!//手机账号输入框 @IBOutlet weak var phoneVertifyText: UITextField!//手机验证码输入框 @IBOutlet weak var phonePassword: UITextField!//手机账号密码输入框 @IBOutlet weak var emailText: UITextField!//邮箱账号输入框 @IBOutlet weak var emailVertifyText: UITextField!//邮箱验证码输入框 @IBOutlet weak var emailPassword: UITextField!//邮箱账号密码输入框2. 如果应用的是未注册过的手机号,首先您须要发送验证码到手机,来验证是否自己注册。输出手机号码,点击“发送验证码”按钮,代码执行到申请手机验证码的办法,在返回中能够看到发送后果。@IBAction func phoneSendVertifyCode(_ sender: Any) { let setting = AGCVerifyCodeSettings.init(action: AGCVerifyCodeAction.registerLogin, locale: nil, sendInterval: 30) AGCPhoneAuthProvider.requestVerifyCode(withCountryCode: "86", phoneNumber: phoneText.text ?? "", settings: setting).onSuccess { (results) in //手机验证码发送胜利 }.onFailure { (error) in //手机验证码发送失败 } }3. 手机收到验证码后,输出验证码和您要设置的明码,就能够进行注册了。在页面上点击“register”按钮,执行手机号注册的办法,注册后果您也能够在block返回中看到。@IBAction func register(_ sender: Any) { AGCAuth.instance().createUser(withCountryCode: "86", phoneNumber: phoneText.text ?? "", password: phonePassword.text ?? "", verifyCode: phoneVertifyText.text ?? "").onSuccess { (result) in //手机注册胜利 }.onFailure { (error) in //手机注册失败 } }4. 注册胜利后,输入您的手机号和设置的明码,点击“login”按钮进行登录。这样您就实现了,应用AGConnectAuth进行手机号注册登录的步骤。@IBAction func login(_ sender: Any) { let credential = AGCPhoneAuthProvider.credential(withCountryCode: "86", phoneNumber: phoneText.text ?? "", password: phonePassword.text ?? "") AGCAuth.instance().signIn(credential: credential).onSuccess { (result) in //登录胜利 }.onFailure { (error) in //登录失败 } }5. 如果应用的是未注册过的邮箱账号,首先须要发送验证码到邮箱来验证。输出邮箱号码,点击“发送验证码”按钮,代码执行到申请邮箱验证码的办法,在返回中您也能够看到发送后果。@IBAction func emailSendVertifyCode(_ sender: Any) { let setting = AGCVerifyCodeSettings.init(action: AGCVerifyCodeAction.registerLogin, locale: nil, sendInterval: 30) AGCEmailAuthProvider.requestVerifyCode(withEmail: emailText.text ?? "", settings: setting).onSuccess { (result) in //邮箱验证码发送胜利 }.onFailure { (error) in //邮箱验证码发送失败 } }6. 邮箱收到验证码后,输出验证码和您要设置的明码,点击“register”按钮,就能够实现注册了。@IBAction func register(_ sender: Any) { AGCAuth.instance().createUser(withEmail: emailText.text ?? "", password: emailPassword.text ?? "", verifyCode: emailVertifyText.text ?? "").onSuccess { (result) in //邮箱注册胜利 }.onFailure { (error) in //邮箱注册失败 } }7. 注册胜利后,输入您的邮箱号和设置的明码,点击“login”按钮进行登录。这样您就实现了,应用AGConnectAuth进行邮箱注册登录的步骤。@IBAction func login(_ sender: Any) { let credential = AGCEmailAuthProvider.credential(withEmail: emailText.text ?? "", password: emailPassword.text ?? "") AGCAuth.instance().signIn(credential: credential).onSuccess { (result) in //登录胜利 }.onFailure { (error) in //登录失败 } }8. 调用signOut办法,退出登录状态。@IBAction func logout(_ sender: Any) { AGCAuth.instance().signOut() }打包测试1. 在Xcode上点击运行按钮,在手机或模拟器上运行利用。输出手机号码,点击“发送验证码”按钮,待手机收到验证码,输出验证码和您要设置的明码,点击“register”,打断点查看是否注册胜利,注册胜利后点击“login”。打断点查看返回后果,result能够看到登录胜利后的用户信息。 ...

October 19, 2021 · 2 min · jiezi

关于xcode:xcode-更多版本下载

之前的地址是:https://developer.apple.com/d... 然而点进去却是这样的 what?苹果竟然改地址了,我一搜寻上面内容,发现第一条记录就是Apple developer问答 https://developer.apple.com/download/more The page you’re looking for can’t be found.发现外面也有https://developer.apple.com/d... 的地址,心想苹果本人的答复,当初也不能应用?在贴子里点击more地址,发现他重链接到了以下地址:所以当初想下载其余版本xcode,只能用上面链接了https://developer.apple.com/d...

June 12, 2021 · 1 min · jiezi

关于xcode:升级Xcode12-遇到的问题

谬误一ReactNative报'event2/event-config.h' file not found解决方案关上testApp.xcworkspace编译呈现'event2/event-config.h' file not found 查阅是因为Flipper-Folly版本导致的,将iOS文件下的 Podfile 文件做如下批改 use_flipper! 批改为 use_flipper!({ 'Flipper-Folly' => '2.3.0' })改完后保留,将Podfile.lock文件删除,而后从新 pod installinstalled实现后,返回下层目录执行 yarn ios (或react-native run-ios)就能够启动了解决方案来自:https://github.com/facebook/r... 谬误二[!] Unable to find a specification for `Bugly (= 2.5.9)` You have either: * out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`. * mistyped the name or version. * not added the source repo that hosts the Podspec to your Podfile.在podfile中增加 ...

April 15, 2021 · 1 min · jiezi

关于xcode:双十二日渐临近如何用vika维格表薅羊毛到爽

双十二还不晓得买什么的敌人们别放心~给大家奉上来自 vika 用户——勤俭持家小达人 @Never 用vika 维格表制作的双十二购物 List(已获分享受权),一起来抄作业吧~奉上链接:https://vika.cn/share/shro62a...戳一戳,另存为模板吧~ —分割线— vika 维格表,作为科技新贵的内容合作神器,不仅是新一代的团队数据合作和项目管理工具,也是一款反对 API 的连贯型智能多维表格。 操作繁难灵便,不懂技术的零根底小白也能分分钟上手,so easy!无论你是企业还是个人用户,都能够像玩积木乐高一样无拘无束,纵情施展创造力,通过 vika 维格表自由组合和拼接数据,搭建专属的「数据城堡」。 接下来就是 vika 维格表的 solo 工夫啦,一起来康康吧~ 多维度视图 灵便出现数据 一年一度的大型剁手节日渐邻近,目不暇接的商品、迷人的优惠折扣,是不是乱花渐欲美人眼呢?wait!放着 vika 维格表来,帮你安顿得明明白白。得益于 vika 维格表 「智能视图」 的性能,同一张维格表能够变换出多种数据视图模式,如「维格视图」、「相册视图」、「甘特图」、「看板」等等,数据能够在不同视图间疾速切换查看,无时无刻满足你对数据可视化的体验。 举个栗子,vika 维格表能够将同一张双十二购物清单,变幻无穷出各式各样的出现形式。 通过维格列丰盛弱小的数据存储属性,将双十二必「buy」清单划分为品名、类别、折扣价、赠品、商品图片展现等多种内容。如果感觉商品图片不够清晰,还能够一键转换成「相册视图」,以大图的模式将商品图文并茂地展现进去,鼠标微微一点,单击你想查看的商品折扣信息,便能和盘托出~ 哇哦~vika 维格表的 「可视化视图」,让商品数据能够在不同视图中游离,自若切换,从全方位、多维度展示商品动静,将迷人的优惠折扣赤裸裸地出现在咱们背后,真的很难不心动啊~除此之外,「彩虹标签」也是 vika 维格表不得不提的小心机~利用 「彩虹标签」,将商品进行逐个分类:面膜、彩妆、护肤等等,每一个标签还能够任由你 DIY,自定义成你心仪的色彩属性。 丰盛字段类型 符合多种数据 上文提到,vika 维格表让数据变得丰富多彩,能够批量上传双十二所要选购的商品信息,如品类、价格等,还能够将图文、视频、音频等多种数据类型「一键加购」入维格列的字段中,切实太有意思啦~那么,这就不得不提维格表领有的弱小且实用的多种字段类型了。基于电子表格的个性,为了不便记录,vika 维格表把内容划分为一个个的维格列,每个维格列能够自由选择想要的字段类型。可供选择的类型十分丰盛,除了文本、数字、日期这些根底类型外,vika 维格表还反对单选、多选、长文本、附件(反对图片/视频/文档等)、地址、货币、评分等等多达十余种类型,符合不同内容的输出模式。 多种数据类型,vika 维格表让数据查看如便当贴般方便快捷,得心应手,想看就看~ 在双十二必「buy」清单中,能够自行添加商品购买渠道链接,随时追踪最新的优惠折扣资讯。如果你无从下手选购,还能够各种宝藏博主的测评指南,将清单内的商品进行打分,直击你最想要剁手的那个它。 其实,vika 维格表的实质是 「智能数据库」,不仅能让数据出现简洁明了,还能够通过「神奇援用」「神奇关联」等人性化的功能设计,无需反复机械化地进行数据输出,只需简略的操作便能逾越不同的表单,链接多条的数据记录,轻松穿插援用你想要的数据,省时,省力,更省心不再局限于纯文本的表格展现模式,将其余零散的数据信息通通整合在 vika 维格表内,不愧为一款高效的数据管理神器。 分组筛选 数据高深莫测 vika 维格表不仅反对对同一个表格提供多种视图模式,每个视图还能够通过 「筛选」、「分组」、「排序」 等微妙操作,帮你从繁杂的数据丛林中解脱,迅速筛选出你须要的数据信息。就拿这份双十二必「buy」清单来说吧,如果你想看到同品种别的商品,how to do?通过「分组」性能,将整张表单的数据进行分组,点击「分组」,再点击「增加分组条件」,依据字段类型和该列名称筛选出相应的数据。如将「商品品类」进行一一分组,所有商品的分类便清晰直观的出现在你眼前,即可马上浏览到品类商品的相干介绍。 当然,还能够将 「筛选」、「分组」、「排序」 进行组合应用,只需几下点击便能整合、统计并查看到所须要的所有记录,灵便直观地查看数据。 ...

December 11, 2020 · 1 min · jiezi

关于xcode:升级Xcode12遇到No-architectures-to-compile-for-ONLYACTIVEARCHYES

明天在降级完Xcode之后运行模拟器报错, 这是因为模拟器短少 x86_64指令集,咱们须要在Xcode 的TARGETS中批改VALID_ARCHS,增加你所短少的指令集,如图所示: 须要在DEBUG 前面增加x86_64 ,在从新运行即可

September 26, 2020 · 1 min · jiezi

关于xcode:Mojave-Xcode-真机-iOS-13-报错

问题形容应用 react native 开发 app Xcode真机调试报错:Could not locate device support files 应用的零碎版本为 macOS Mojave 10.14.6 无奈也不想降级 Catalina Xcode 版本为 10 解决办法网上搜到的办法通常是: 下载已有的真机设备反对包,比方在 Github 上下载 而后拷贝对应的文件夹到目录: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/这里留神文件夹的命名,真机连贯xcode后,会生成一个对应的文件夹名称在目录: /Users/xxxx/Library/Developer/Xcode/iOS DeviceSupport前者的文件夹命名要与后者保持一致,比方我的文件夹名称模式为 13.5 (17F75) arm64e拷贝实现后,重启 Xcode 在 Depoly Target 中手动填写 iOS 版本,我的是 13.5 而后运行 仍然报错,这个报错消耗了我两个多小时,无奈解决... 直到第二天,搜寻一些材料,想到了起因,并通过了验证,发现起因是: 上述办法只在 Xcode 11 无效 ! 所以降级 Xcode 到 11 ,上述办法就能够失效了,不再报错,具体降级办法参照我的上一篇文章。 降级前能够删除原来的 Xcode 版本,也能够重命名保留。

August 13, 2020 · 1 min · jiezi