Tag: Xcode 9

使用Pods重命名Xcode项目:简单方法

制作应用程序时,我们可能想在发布应用程序名称之前对其进行重命名。 但是Xcode中的过程有点复杂。 当我们的项目中有一些Podfile时,它将变得更加复杂。 在本文中,我将分享重命名项目的过程。 第1步-重命名项目 在Xcode视图左侧的“项目导航器”中选择您的项目。 在右侧选择“文件检查器” ,项目名称应位于“身份和类型”下 ,将其更改为新名称并按Enter 。 将显示一个对话框,列出项目中可以重命名的项目。 在下拉菜单中单击“重命名” 步骤2-重命名方案 在顶部栏中(“停止”按钮附近),有一个用于您的旧产品的方案,请单击它,然后转到“管理方案” 。 您也可以在此处找到“管理方案”: 菜单栏>产品>方案>管理方案的 单击方案中的OLD名称,它将变为可编辑状态,更改名称。 退出 Xcode。 步骤4 —重命名主文件夹 打开您的项目文件夹,并将OLD.xcworkspace重命名为NEW.xcworkspace。 步骤5 —处理Podfile 在终端中,cd进入项目目录并打开Podfile。 您应该看到带有OLD名称的target子句。 将其更改为新并保存。 执行“ pod deintegrate” ,Cocoapods将删除与pod相关的配置,脚本,生成的框架以及Pods /目录。 现在执行“ pod安装”。 步骤6 —现在打开您的项目 您将看到一个警告: “文件夹OLD不存在” ,请消除该警告。 在左侧的“项目导航器”中 ,您将看到红色的OLD文件夹名称。 单击标识中的文件夹图标,然后键入以打开查找程序并从NewName项目文件夹导航到NewName文件夹。 转到项目导航器-> [您的项目名称]->构建设置->打包-> Info.plist文件,然后将路径的子字符串从“ OLD”更改为“ NEW”。 对产品标识符执行相同的操作。 现在清理并构建项目。

致力于React Native初学者〜从零开始React Native

致力于React Native初学者 〜从零开始React Native 拥有Mac机器。 从计算机上的App Store安装Xcode。 是的,您可以安装最新的 安装节点 下载链接-https://nodejs.org/en/download/ 将其安装在您的机器上 打开terminl并输入“ npm -version”将类似于5.xx [其中x是> 0的整数] 键入此命令以转到4.6.1稳定版本“ npm install -g npm@4.6.1” 打开terminl并输入“ npm -version”,它将显示4.6.1。 安装守卫 当心〜如果您不安装watchman,然后再运行“ npm start”,它将显示错误消息,例如 无法启动服务器,请运行以下代码段:sudo sysctl -w fs.inotify.max_user_instances = 1024 sudo sysctl -w fs.inotify.max_user_watches = 12288 建立专案 打开终端 输入commad“ npm install -g create-react-native-app”。 这将安装create-react-native-app,在创建项目的任何路径上都可以使用 在终端上,导航到要在其中创建本机项目的路径 键入命令“ create-react-native-app MyFirstRNProject”项目这将创建一个新的React Native Project,其文件夹名为MyFirstRNProject 运行项目 […]

在单个版本中启动多个模拟器-XCode 9和XCode 10

iOS开发人员面临的主要挑战之一就是要在所有可用的iPhone屏幕尺寸上测试自动布局。 如今,如果您遵循Apple的建议以支持iOS 10以后的所有设备,则必须以至少5种屏幕尺寸显示布局: iPhone SE iPhone 6 / 6s / 7/8 iPhone 6 / 6s / 7/8 Plus iPhone X / XS iPhone XS最大 对于所有这些屏幕尺寸,我们必须确保布局适合其中每个尺寸。 但是由于要实例化不同的模拟器大小以测试布局,因此此任务很痛苦。 这就是为什么此脚本可以帮助您节省大量时间的原因。 #创建一个自定义模拟器 首先,我们必须创建一个新的模拟器,该模拟器将在构建项目时一起启动所有模拟器。 为此,请转到Products -> Scheme -> Edit Scheme 打开左侧菜单中的Build ,创建一个新的Pre-Aciton脚本并粘贴以下脚本 #创建模拟器列表文件 该文件将保存运行“ Custom Simulators模拟器时将启动的模拟器中的所有标识符。 在项目根目录下创建一个名为SimulatorsList.txt的文件,并列出要启动的所有模拟器标识符。 请注意,启动更多的模拟器会使用更多的内存和CPU。 要获取模拟器标识符,请打开您的终端并运行instruments -s devices 。 这将列出所有可用的模拟器及其各自的标识符。 它们将以以下格式显示: iPhone型号(iOS版本)[IDENTIFIER](仿真器) 我们只对模拟器标识符感兴趣,因此对于要同时启动的所有模拟器,将其标识符复制到方括号之间,并将其粘贴到SimulatorsList文件中,每行一个。 #创建运行脚本 最后一步是创建一个运行脚本,以在所选模拟器为“定制模拟器”时运行此最近创建的脚本。 选择项目目标,然后转到“ Build […]

Xcode 10的惊人和新功能

最近,Apple在WWDC 2018上发布了Xcode10。Xcode10比其最初发布的版本要好得多,永远不要低估内部应用程序的更改以真正影响开发生命周期。 如果您熟悉Xcode 9,将会看到巨大的变化。 Xcode 10中进行了一些令人难以置信的更改,这些更改将使您的代码比以往任何时候都更易于原型设计。 首先,让我们讨论“ 什么是Xcode ?” Xcode是用于为Apple Watch,Apple TV,iPad,iPhone和Mac制作应用程序的整个开发人员工具集。 Xcode开发将Simulator,Instruments分析工具和OS结构捆绑为tvOS SDK,watchOS SDK,iOS SDK和macOS SDK。 让我们讨论Xcode 10的惊人功能 NSGridView设计工具: 有一个惊人的新设计工具可用于布置矩阵视图。 它可以极大地帮助我们记住在Numbers(Apple iWorks)中使用电子表格的方式,您可以四处拖动以添加/删除行和列以及编辑其他详细信息。 资产目录: 在macOS 10.14或更高版本上通过亮,暗和高对比度外观支持不同的图像和颜色资源。 •支持CarPlay资源。 •支持ARKit 3D ARReferenceObject资源。 •资产目录和视图调试器的背景可以明确设置为浅色或深色,因此正面元素的显示差异很大。 支持的配置: 考虑任何新功能的主要因素将是完美的平台。 同样,这是Xcode 10轻松工作所需的设置。 最初需要运行MacOS 10.13.4或更高版本的Mac。 在Xcode 10中进行测试: Xcode 10有助于领导并发和并行测试,从而减少了独立运行测试的机会。 诚然,并行测试对macOS单元测试以及iOS和tvOS单元和UI测试也有很大帮助。 在源代码编辑器中进行更改: 当前,可以想到的是利用多光标进行编辑,目的是您可以快速更改不同的代码范围而不会稍有延迟。 构建系统: Xcode 10中的新构建系统增强了可靠性和构建性能。 该框架可以识别遗留构建系统忽略(忽略)的项目配置问题。 通过在“文件”>“项目/工作区设置”表中选择系统设置,开发人员可以更改为Xcode 10中的旧版构建系统。 关于: Binary Informatics是一家离岸开发公司,总部位于印度诺伊达,在美国海湾地区也设有开发办事处。 我们是一个由60人组成的团队,我们始终致力于为客户提供高质量的工作。 我们提供以下方面的解决方案:网站开发,Web应用程序开发,产品开发, […]

在iOS 11中的iDevice上进行无线调试

像我一样,我希望所有人都对Xcode9中的超酷新功能感到兴奋,现在您可以在iPhone / iPad上调试应用程序,而无需实际使用减轻的电缆将其连接到Mac。 以下是配对设备所需遵循的简单步骤: 在“ Xcode”菜单中,选择“窗口”>“设备和模拟器”,然后单击“设备”。 使用电缆将设备连接到Mac,然后选择设备。 单击“通过网络连接”旁边的框。 4. Xcode与您的设备配对后,您将在设备旁边看到网络图标。 PS:您的设备和Mac必须在同一网络上才能进行配对。 一旦您在设备旁边看到网络图标,就可以将设备从避雷线上移开,并且已经准备好享受无线调试的便利🙂

Swift和Xcode 9中的iOS版Salesforce SDK入门

我遇到了一个名为“ 本机iOS-使用Salesforce Mobile SDK开发本机iOS应用程序 ”的模块,我对此很感兴趣,因此决定启动它。 我很早就遇到了问题,并且我没有看到太多有关Xcode 9和Swift的文档,所以我决定在这里写我的经验,因为它可能对某些人有用。 第一步,我由Salesforce下载了移动SDK文档,因为它包含了您一路需要的有价值的信息。 提醒一下,所有Mobile SDK开发都需要以下软件。 Node.js Npm 3.10或更高版本(与Node.js一起安装)。 具有连接的应用程序的Salesforce Developer Edition组织。 使用Mobile SDK 6.0进行iOS开发还需要以下软件:iOS 10或更高版本,Xcode 9或更高版本。 (我们建议使用最新版本。),CocoaPods 1.2版或更高版本(cocoapods.org)和forceios 6.0版。 剧透警报 -本文将帮助您度过Trailhead上的第一个挑战,请不要使用它来作弊并尝试首先自己解决。 步骤1 —在Salesforce中获取已连接的应用程序的回调URL和使用者密钥 此步骤假设您正在使用Salesforce Lightning Experience,并且已经创建了一个已连接的应用程序-如果您需要有关如何创建应用程序的帮助,请检查此Salesforce Trailhead模块。 在您的Trailhead Playground或Developer Edition组织中,转到“设置”。 如果您使用的是Lightning Experience,请选择“ 应用程序” |“ 应用程序” 。 应用程序管理器 ,在我的案例“ Trailhead Native iOS”中本地化您的应用程序,然后单击箭头和“ 视图” 。 将您的使用者密钥和回调URL复制并粘贴到文本文件中,以后将需要它们。 第2步-为Xcode创建iOS本机Swift模板 首先,我遇到了我的Git版本的麻烦,不得不再次安装它。 否则,这很简单。 在终端窗口中,使用forceios创建。 $ forceios创建 […]

在Xcode 10.2和iOS 12中编写自定义通用框架

作为开发人员,我们希望尽可能多地编写可重用的代码集,以便以后可以将这些组件与多个应用程序一起使用,并使生活变得轻松。 注意 :有关iOS面试问题,请查看此链接—您必须在2018年准备的iOS面试主要问题 框架是模块化的和可重用的代码集,用作高级软件的组成部分。 框架具有三个主要目的: 代码封装 代码模块化 代码重用 使用框架的最好理由是它们可以被构建一次,并且可以无限制地重复使用! 入门 让我们从创建自定义框架开始,使其通用,以便可以在模拟器以及设备上使用它。 让我们打开Xcode并创建一个新项目。 选择iOS选项卡,向下滚动到Framework & Library然后选择Cocoa Touch Framework 。 为您的框架项目选择一个模板 2.输入产品名称并填写其他详细信息 填写完所有详细信息并按下一步后,您的项目就可以按以下所示进行构建了– 如果您构建项目,则它将生成TestFramework.framework作为产品,该产品将根据开发人员选择的选项支持模拟器或设备。 您当前的状态是一个没有代码的框架,这和没有糖的纯巧克力一样吸引人。 在框架中添加逻辑或功能,然后尝试构建它。 我们专注于创建通用框架,因此编写代码和资源部分留给开发人员去探索更多或等待另一部分。 现在是时候学习了,如何使自定义框架成为可在模拟器和设备上使用的通用框架。 3.创建新方案,选择项目目标→新建模式 请输入新的架构名称-ProjectName – Universal 。 现在是时候使用这种模式来创建通用框架了。 我写了一个“运行脚本”来生成通用框架。 选择项目目标 → 编辑模式 → 存档 → 后操作 → 按“ +” →“ 新建运行脚本操作” 。 然后复制粘贴下面的脚本代码。 UNIVERSAL_OUTPUTFOLDER = $ {BUILD_DIR} / $ {CONFIGURATION} -Universal […]

Xcode 9快捷键

命令键 (⌘)+ 0:打开/关闭项目浏览器 命令键 (⌘)+ 选项键 (⌥)+0:打开/关闭文件检查器 命令键 (⌘)+ Shift + Y:打开/关闭Xcode控制台 命令键 (⌘)+ B:构建项目 Command键 (⌘)+ Shift + K键:清理项目 选项键 (⌥)+ 命令键 (⌘)+ Shift + K:清除构建文件夹 删除派生数据:Xcode>首选项>位置选项卡>派生数据>单击箭头按钮 打开“派生数据”>“删除两个文件夹”

快照XCUI测试

本教程向您展示如何将流行的测试库iOSSnapshotTestCase与XCUITests一起使用。 如果您已经知道如何创建项目并安装一些Pod,请随时跳过。 设置项目 然后在项目的根目录中,运行pod init 。 这将在项目的根目录中创建一个Podfile。 打开它,然后将pod ‘iOSSnapshotTestCase’添加到Test和UITest目标,如下所示: 然后运行pod install 。 这会将所需的文件添加到这些目标。 接下来,您将要编辑方案以添加必要的环境变量。 您可以从iOSSnapshotTestCase存储库中复制粘贴的前两个,除路径的最后一部分外,第三个将相同。 FB_REFERENCE_IMAGE_DIR是该工具将存储参考图像的位置。 该工具将在IMAGE_DIFF_DIR中存储差异以检查故障。 FAILED_UI_TEST_DIR是我们的自定义目录,我们将在其中存储XCUITest故障的快照 添加一个XCUITest 现在我们需要测试。 在Main.storyboard添加带有一些文本的UILabel 。 还要添加一个UIButton ,以一种不同的感觉与新的UIViewController结合。 例如: 在预先生成的SnapshotUITestingUITests ,将生成的代码替换为: 很好 如果将recordMode切换为false(或删除该行),则下一次运行会将屏幕截图与刚拍摄的截图进行比较。 在项目目录中找到存储的图像应该没有问题。 解决状态栏问题 我将为您省去发现的旅程,只告诉您有问题。 以这种方式做事需要整个模拟器的屏幕截图。 不用担心 我们可以解决这个问题。 将新文件添加到UITest目标,并将其UIImageExtensions 。 添加以下代码。 结论: 尚未使用太多,但看起来确实很有希望。 让我知道您的想法,如果您最终使用它! 您可以在这里找到完成的项目:https://github.com/joesus/SnapshotUITesting

Bitrise现在支持Xcode 9的新exportOptions属性!

我们已经发布了新的Xcode Archive步骤版本(2.2.0),该版本能够自动检测新的exportOptions属性,因此不再需要两周前提供的解决方法。 👻但是,您仍然必须进行一些设置。 问题… 在Xcode 9中,引入了新的必需exportOptions属性: provisioningProfiles ,它描述了应该使用哪个配置文件来签名项目中的哪个目标。 即使Xcode 9在测试版中,我们也使用它创建了一个堆栈,以使我们的用户可以使用Xcode 9测试他们的项目。但是,即使您可以在Bitrise上使用Xcode 9,我们的Xcode存档步骤也无法自动检测到配置文件–捆绑包ID映射(这是新的exportOptions属性),因此导致多个构建失败。 …现在已整理👨 该步骤将像以前一样归档您的项目,此部分没有更改。 步骤从您的项目中生成.xcarchive文件后,它开始收集exportOptions(如果xcode版本> 6)。 从存档导出IPA文件时,您需要定义该步骤应如何导出。 有两个选项,让我们看一下相关示例: 如果设置了custom_export_options_plist_content输入,则该步骤将使用您提供的exportOptions。 故事结束🙂 如果未设置此项,并且export_method设置为auto-detect ,则该步骤将使用嵌入到.xcarchive文件中的配置文件来确定导出方法(如前所述),从现在开始,项目中的每个目标都将是使用此个人资料签名。 (第二)故事的结局。 如果您为export_method输入指定了任何其他导出方法,则此步骤将列出为签名应用程序而配置的每个已安装的配置文件,然后该步骤过滤此列表以查找与指定的导出方法匹配的配置文件。 如果该步骤仅找到1个匹配的配置文件(每个目标),则此配置文件将用于对目标进行签名。 (3.故事的结尾。) 如果多个概要文件与目标和指定的导出方法匹配,则该步骤无法决定要使用哪个概要文件,因此它将失败。 在这种情况下,您应该按照此博客文章中的说明指定custom_export_options_plist_content 。 (3.b故事结束) 编码愉快! 🚀