Flutter技术入门与实战(txt+pdf+epub+mobi电子书下载)


发布时间:2020-07-10 14:35:16

点击下载

作者:亢少军

出版社:机械工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

Flutter技术入门与实战

Flutter技术入门与实战试读:

前言

现在,主流的移动开发平台是Android和iOS,每个平台上的开发技术不太一样,针对每个平台开发应用需要特定的人员,但这样一来开发效率低下,因而需要进行跨平台开发。跨平台技术从最开始的Hybrid混合开发技术,到React Native的桥接技术,一直在演进。

Hybrid开发主要依赖于WebView。但WebView是一个重量级的控件,很容易产生内存问题,而且复杂的UI在WebView上显示的性能不好。React Native技术抛开了WebView,利用JavaScript Core来做桥接,将JavaScript调用转为Native调用。React Native最终会生成对应的自定义原生控件。这种策略将框架本身和App开发者绑在系统的控件上,不仅框架本身需要处理大量平台相关的逻辑,随着系统版本变化和API的变化,开发者可能也需要处理不同平台的差异,甚至有些特性只能在部分平台上实现,这样使得跨平台特性大打折扣。

Flutter是最新的跨平台开发技术,可以横跨Android、iOS、MacOS、Windows、Linux等多个系统。Flutter采用了更为彻底的跨平台方案,即自己实现了一套UI框架,然后直接在GPU上渲染UI页面。

笔者最早接触的跨平台技术是Adobe Air技术,写一套Action Script代码可以运行在PC、Android及iOS三大平台上。目前,笔者与朋友开发视频会议产品,需要最大化地减少前端的开发及维护工作量,所以,我们先后考察过Cordova、React Native及Flutter等技术。我们觉得Flutter方案更加先进,效率更高,后来就尝试用Flutter开发了全球第一个开源的WebRTC插件(可在GitHub上搜索Flutter WebRTC)。

写作本书的目的是想传播Flutter知识(因为Flutter确实优秀),想为Flutter社区做点贡献的同时也为我们的产品打下坚实的技术基础。通过写作本书,笔者查阅了大量的资料,使得知识体系扩大了不少,收获良多。

本书主要内容

第1章介绍Flutter的基本概念,并搭建第一个Flutter程序,来感受一下Flutter之美。

第2章介绍几个重要知识点,如入口程序、Material Design、Flutter主题、无状态组件和有状态组件、使用包资源、Http请求。

第3章简单介绍Dart语言。Dart语言是Flutter SDK指定的语言,我们很有必要补充一下它的基础知识,包括语法特性、基本语句、面向对象等。

第4章介绍常用组件。Flutter里有一个非常重要的核心理念:一切皆为组件,本章主要讲解开发中用得最频繁的组件,如容器组件、图片组件、文本组件、图标组件和表单组件等。

第5章介绍Material Design风格的组件,Material Design风格是一种非常有质感的设计风格,并提供一些默认的交互动画。本章将分类介绍这些组件。

第6章介绍Cupertino风格的组件,这是一类iOS风格的组件,如CupertinoTabBar、CupertinoPageScaffold、CupertinoTabScaffold、CupertinoTabView等。

第7章介绍页面布局的基础知识和技巧,如基础布局处理、宽高尺寸处理、列表及表格布局等,最后通过一个综合布局示例来演示如何编写复杂的页面。

第8章介绍如何处理手势,如轻击、拖动和缩放等。Flutter中提供GestureDetector进行手势检测,并为手势检测提供了相应的监听。

第9章介绍如何加载、处理、展示资源和图片,如添加资源和图片、自定义字体等。

第10章介绍路由及导航是如何处理的,包括页面的渲染以及数据传递。

第11章介绍组件装饰和视觉效果的处理,如Opacity(透明度处理)、DecoratedBox(装饰盒子)、RotatedBox(旋转盒子)、Clip(剪裁处理)和CustomPainter(自定义画板)。

第12章介绍动画效果的制作,包含两个动画组件的使用:用AnimatedOpacity实现渐变效果、用Hero实现页面切换动画。

第13章介绍Flutter插件开发的入门知识。Flutter插件可以和原生程序打交道,比如调用蓝牙、启用WIFI、打开手电筒,等等。

第14章介绍开发工具及使用技巧,介绍几款常用的IDE工具,从代码的编写、辅助功能、程序调试、性能分析等多方面讲解工具及使用技巧。

第15章介绍测试与发布应用,包括:测试应用、发布Android版和iOS版App。

第16章通过一个综合案例介绍如何使用Flutter实现即时通讯App的界面。

阅读建议

本书是一本基础入门加实战的书籍,既有基础知识,又有丰富示例,包括详细的操作步骤,实操性强。由于Flutter大量使用组件,所以本书对组件的讲解很详细,包括基本概念、属性及代码示例。每个组件都配有小例子,力求精简,还提供了配套网站提供完整代码,复制完整代码就可以立即看到效果。这样会给读者信心,在轻松掌握基础知识的同时快速进入实战。

如果你正在使用类似React Native等跨平台的技术,那么学习Flutter相对轻松很多。使用Flutter构建应用时,需要Android和iOS知识,因为Flutter依赖移动操作系统提供众多功能和配置。Flutter是一种为移动设备构建用户界面的新方式,但它有一个插件机制可与Android和iOS进行数据及任务通信。本书有一章专门讲解Flutter的插件开发技术,可以作为进一步学习的起点。

Flutter引用了大量Web开发的知识,比如FlexBox布局方式、盒模型等,这些都引用了CSS的一些思想。所以从UI界面的实现角度来说,只需要熟悉Dart语言就能轻松上手Flutter。本书专门有一章介绍Dart语言的基础知识。

建议读者在一开始先把第1~3章基础理论通读一遍。到第4章时实际操作并运行每个例子,这样就能开发Flutter最简单的界面了。

第5章和第6章通读即可。第7章介绍的构建页面布局都是开发中常用的布局方法,建议读者仔细阅读、实际操作并运行每个例子。尤其是最后的布局综合例子,按步骤都走一遍,就能理解布局的思路。

第8~12章涵盖Flutter的高级用法,在开发中也经常使用。可以根据实际项目开发和学习的需要阅读。第13章介绍Flutter插件开发。这需要具备原生开发的知识,比如Java、Objective-C等相关知识。如果读者不需要开发插件可以略过。第14~16章实操性很强,读者只要根据书中的步骤仔细操作,就能快速掌握。

关于随书代码

本书所列代码力求完整,但由于篇幅所限,代码没有全放在书里。完整代码在以下网址:

http://www.flutter100.net

https://github.com/kangshaojun

致谢

首先感谢机械工业出版社吴怡编辑的耐心指点,以及推动了本书的出版。

感谢朋友段伟伟工程师,江湖人称“鱼老大”,国内骨灰级WebRTC开发者、视频会议产品合作者。在这里感谢鱼老大的技术分享及帮助。

感谢陈波及陈志红两位好友。在本书交稿压力最大的时侯,从内容安排及语言润色方面,都提供了一些非常有用的建议。还感谢高文翠老师对本书大纲的指导。

最后还要感谢我的家人。感谢我的母亲及妻子,在我写作过程中承担了全部的家务并照顾小孩儿,使我可以全身心地投入写作工作。在写作那段时间,正好家里阁楼装修,感谢我的父亲,他亲自管理装修工程,帮我节省了很多时间和精力。我爱你们,和你们在一起是幸运的事情!亢少军2018年12月7日第1章开启Flutter之旅

Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。Flutter可以与现有的代码一起工作。在全世界,Flutter正在被越来越多的开发者和组织使用,并且Flutter是完全免费、开源的。

在本章中,我们将介绍Flutter的一些基本概念,及开发Flutter的准备工作,包括:

·Flutter的特点与核心概念。

·开发环境搭建。

·第一个Flutter程序。1.1 Flutter的特点与核心概念

Flutter的特点如下所示:

·跨平台:现在Flutter至少可以跨5种平台,甚至支持嵌入式开发。我们常用的有MacOS、Windows、Linux、Android、iOS,甚至可以在谷歌最新的操作系统Fuchsia上运行。到目前为止,Flutter算是支持平台最多的框架了,良好的跨平台性,直接带来的好处就是减少开发成本。

·丝滑般的体验:使用Flutter内置高大上的Material Design和Cupertino风格组件、丰富的motion API、平滑而自然的滑动效果和平台感知,为用户带来全新体验。

·响应式框架:使用Flutter的、响应式框架和一系列基础组件,可以轻松构建用户界面。使用功能强大且灵活的API(针对2D、动画、手势、效果等)能解决艰难的UI挑战。

·支持插件:通过Flutter的插件可以访问平台本地API,如相机、蓝牙、WiFi等。借助现有的Java、Swift、Objective C、C++代码实现对原生系统的调用。

·60fps超高性能:Flutter采用GPU渲染技术,所以性能极高。Flutter编写的应用是可以达到60fps(每秒传输帧数),这也就是说,它完全可以胜任游戏的制作。官方宣称用Flutter开发的应用甚至会超过原生应用的性能。

Flutter包括一个现代的响应式框架、一个2D渲染引擎、现成的组件和开发工具。这些组件可以帮助你快速地设计、构建、测试和调试应用程序。Flutter的核心概念有:组件、构建、状态、框架等,下面分别介绍。1.1.1 一切皆为组件

组件(Widget)是Flutter应用程序用户界面的基本构建块。不仅按钮、输入框、卡片、列表这些内容可作为Widget,甚至将布局方式、动画处理都视为Widget。所以Flutter具有一致的统一对象模型:Widget。

Widget可以定义为:

·一个界面组件(如按钮或输入框)。

·一个文本样式(如字体或颜色)。

·一种布局(如填充或滚动)。

·一种动画处理(如缓动)。

·一种手势处理(GestureDetector)。

Widget具有丰富的属性及方法,属性通常用来改变组件的状态(颜色、大小等)及回调方法的处理(单击事件回调、手势事件回调等)。方法主要是提供一些组件的功能扩展。比如:TextBox是一个矩形的文本组件,其属性及方法如下:

·bottom:底部间距属性。

·direction:文本排列方向属性。

·left:左侧间距属性。

·right:右侧间距属性。

·top:上部间距属性。

·toRect:导出矩形方法。

·toString:转换成字符串方法。1.1.2 组件嵌套

复杂的功能界面通常都是由一个一个简单功能的组件组装完成的。有的组件负责布局,有的负责定位,有的负责调整大小,有的负责渐变处理,等等。这种嵌套组合的方式带来的最大好处就是解耦。

例如,界面中添加了一个居中组件Center,居中组件里嵌套了一个容器组件Container,容器组件里嵌套了一个文本组件Text和一个装饰器BoxDecoration。代码如下所示:return new Center( //添加容器 child: new Container( //添加装饰器 decoration: new BoxDecoration( ), child: new Text( //添加文本组件 ), ),),

大家如果是首次看到这段代码会觉得嵌套层次太多,太复杂。其实不然,随着对组件的深入了解及熟练使用,写起来还是非常得心应手的。

最基础的组件类是Widget,其他所有的组件都是继承Widget的,如图1-1所示。紧接着下面有两大类组件:有状态组件及无状态组件。有状态组件是界面会发生变化的组件,如Scrollable、Animatable等,无状态的组件即界面不发生变化的组件,如Text、AssetImage等。图1-1 类层次结构1.1.3 构建Widget

可以重写Widget的build方法来构建一个组件,如下代码所示:@protected Widget build(BuildContext context);

build即为创建一个Widget的意思,返回值也是一个Widget对象,不管返回的是单个组件还是返回通过嵌套的方式组合的组件,都是Widget的实例。1.1.4 处理用户交互

如果Widget需要根据用户交互或其他因素进行更改,则该Widget是有状态的。例如,如果一个Widget的计数器在用户点击一个按钮时递增,那么该计数器的值就是该Widget的状态。当该值发生变化时,需要重新构建Widget以更新UI。

这些Widget将继承StatefulWidget(而不是State)并将它们的可变状态存储在State的子类中,如图1-2所示。图1-2 有状态Widget继承示意图

每当你改变一个State对象时(例如增加计数器),必须调用setState()来通知框架,框架会再次调用State的构建方法来更新用户界面。

有了独立的状态和Widget对象,其他Widget可以以同样的方式处理无状态和有状态的Widget,而不必担心丢失状态。父Widget可以自由地创造子Widget的新实例且不会失去子Widget的状态,而不是通过持有子Widget来维持其状态。框架在适当的时候完成查找和重用现有状态对象的所有工作。1.1.5 什么是状态

Flutter中的状态和React中的状态概念一致。React的核心思想是组件化的思想,应用由组件搭建而成,而组件中最重要的概念是State(状态),State是一个组件的UI数据模型,是组件渲染时的数据依据。Flutter程序的运行可以认为是一个巨大的状态机,用户的操作、请求API和系统事件的触发都是推动状态机运行的触发点,触发点通过调用setState方法推动状态机进行响应。状态的生命周期如图1-3所示。图1-3 状态的生命周期1.1.6 分层的框架

Flutter框架是一个分层的结构,每一层都建立在前一层之上。图1-4显示了Flutter框架,上层比下层的使用频率更高。提示 有关构成Flutter分层框架的完整库,请参阅官方的API文档,地地为:https://docs.flutter.io/。

分层设计的目标是帮助开发者用更少的代码做更多的事情。例如,Material层通常组合来自Widget层的基本Widget,而Widget层通过较低级对象渲染层来构建。

分层结构为构建应用程序提供了许多选项。选择一种自定义的方法来释放框架的全部表现力,或者使用构件层中的构建块,或混合搭配。可以使用Flutter提供的所有现成的Widget,也可以使用Flutter团队用于构建框架的相同工具和技术创建定制的Widget。也就是说,你可以从高层次、统一的Widget概念中获得开发效率优势,也可以深入到下层施展才能。图1-4 Flutter框架1.2 开发环境搭建

开发环境搭建还是非常烦琐的,任何一个步骤失败都会导致最终环境搭建不能完成。Flutter支持三种环境:Windows、MacOS和Linux。这里我们主要讲解Windows及MacOS的环境搭建。1.2.1 Windows环境搭建1.使用镜像

首先解决网络问题。环境搭建过程中需要下载很多资源文件,当某个资源更新不到时,就可能会报各种错误。在国内访问Flutter有时可能会受到限制,Flutter官方为中国开发者搭建了临时镜像,大家可以将如下环境变量加入到用户环境变量中:export PUB_HOSTED_URL=https://pub.flutter-io.cnexport FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn 注意 此镜像为临时镜像,并不能保证一直可用,读者可以参考Using Flutter in China:https://github.com/flutter/flutter/wiki/Using-Flutter-in-China以获得有关镜像服务器的最新动态。2.安装Git

Flutter依赖的命令行工具为Git for Windows(Git命令行工具)。Windows版本的下载地址为:https://git-scm.com/download/win。3.下载安装Flutter SDK

去Flutter官网下载其最新可用的安装包。注意 Flutter的渠道版本会不停变动,请以Flutter官网为准。Flutter官网下载地址:https://flutter.io/docs/development/tools/sdk/archive#windows。Flutter GitHub下载地址:https://github.com/flutter/flutter/releases。

将安装包zip解压到你想安装Flutter SDK的路径(如:D:\Flutter)。在Flutter安装目录的Flutter文件下找到flutter_console.bat,双击运行并启动Flutter命令行,接下来,你就可以在Flutter命令行运行flutter命令了。注意 不要将Flutter安装到需要一些高权限的路径如C:\Program Files\。4.添加环境变量

不管使用什么工具,如果想在系统的任意地方能够运行这个工具的命令,则需要添加工具的路径到系统path里去。这里路径指向到Flutter文件的bin路径,如图1-5所示。同时,检查是否有名为“PUB_HOSTED_URL”和“FLUTTER_STORAGE_BASE_URL”的条目,如果没有,也需要添加它们。重启Windows才能使更改生效。图1-5 添加Flutter环境变量5.运行flutter命令安装各种依赖

使用Windows命令窗口运行以下命令,查看是否需要安装任何依赖项来完成安装:flutter doctor

该命令检查你的环境并在终端窗口中显示报告。Dart SDK已经捆绑在Flutter里了,没有必要单独安装Dart。仔细检查命令行输出以获取可能需要安装的其他软件或进一步需要执行的任务。如下代码粗体显示,Android SDK缺少命令行工具,需要下载并且提供了下载地址,通常这种情况只需要把网络连好,VPN开好,然后重新运行flutter doctor命令即可。[-] Android toolchain - develop for Android devices • Android SDK at D:\Android\sdk x Android SDK is missing command line tools; download from https://goo.gl/XxQghQ • Try re-installing or updating your Android SDK, visit https://flutter.io/setup/#android-setup for detailed instructions.注意 一旦你安装了任何缺失的依赖,需再次运行flutter doctor命令来验证你是否已经正确地设置了,同时需要检查移动设备是否连接正常。6.编辑器设置

如果使用flutter命令行工具,可以使用任何编辑器来开发Flutter应用程序。输入flutter help在提示符下查看可用的工具。但是笔者建议最好安装一款功能强大的IDE来进行开发,毕竟开发调试运行打包的效率会更高。由于Windows环境只能开发Flutter的Android应用,所以接下来我们会重点介绍Android Studio这款IDE。(1)安装Android Studio

要为Android开发Flutter应用,你可以使用Mac或Windows操作系统。Flutter需要安装和配置Android Studio,步骤如下:

1)下载并安装Android Studio:https://developer.android.com/studio/index.html。

2)启动Android Studio,然后执行“Android Studio安装向导”。这将安装最新的Android SDK、Android SDK平台工具和Android SDK构建工具,这是Flutter为Android开发时所必需的。(2)设置你的Android设备

要准备在Android设备上运行并测试你的Flutter应用,需要安装Android 4.1(API level 16)或更高版本的Android设备。步骤如下:

1)在你的设备上启用“开发人员选项”和“USB调试”,这些选项通常在设备的“设置”界面里。

2)使用USB线将手机与计算机连接。如果你的设备出现提示,请授权计算机访问你的设备。

3)在终端中,运行flutter devices命令以验证Flutter识别出你连接的Android设备。

4)用flutter run启动你的应用程序。提示 默认情况下,Flutter使用的Android SDK版本是基于你的adb工具版本。如果你想让Flutter使用不同版本的Android SDK,则必须将该ANDROID_HOME环境变量设置为SDK安装目录。(3)设置Android模拟器

要准备在Android模拟器上运行并测试Flutter应用,请按照以下步骤操作:

1)启动Android Studio→Tools→Android→AVD Manager并选择Create Virtual Device,打开虚拟设备面板,如图1-6所示。图1-6 打开虚拟设备面板

2)选择一个设备并点击Next,如图1-7所示。图1-7 选择模拟硬件设备

3)选择一个镜像点击download即可,然后点击Next,如图1-8所示。图1-8 选择系统镜像

4)验证配置信息,填写虚拟设备名称,选择Hardware-GLES 2.0以启用硬件加速,点击Finish,如图1-9所示。图1-9 验证配置信息

5)在工具栏选择刚刚添加的模拟器,如图1-10所示。图1-10 在工具栏选择模拟器

6)也可以在命令行窗口运行flutter run启动模拟器。当能正常显示模拟器时(如图1-11所示),则表示模拟器安装正常。图1-11 Android模拟器运行效果图提示 建议选择当前主流手机型号作为模拟器,开启硬件加速,使用x86或x86_64image。

详细文档请参考:https://developer.android.com/studio/run/emulator-acceleration.html。(4)安装Flutter和Dart插件

IDE需要安装两个插件:

·Flutter插件:支持Flutter开发工作流(运行、调试、热重载等)。

·Dart插件:提供代码分析(输入代码时进行验证、代码补全等)。

打开Android Studio的系统设置面板,找到Plugins分别搜索Flutter和Dart,点击安装即可,如图1-12所示。图1-12 Android Studio插件安装1.2.2 MacOS环境搭建

首先解决网络问题,参见上节“Windows环境搭建”。1.命令行工具

Flutter依赖的命令行工具有bash、mkdir、rm、git、curl、unzip、which。2.下载安装Flutter SDK

请按以下步骤进行下载安装Flutter SDK:

步骤1:去Flutter官网下载其最新可用的安装包。注意 Flutter的渠道版本会不停变动,请以Flutter官网为准。另外,在中国大陆地区,要想获取安装包列表或下载安装包有可能发生困难,读者也可以去Flutter GitHub项目下去下载安装Release包。

Flutter官网下载地址:https://flutter.io/docs/development/tools/sdk/archive#macos

Flutter GitHub下载地址:https://github.com/flutter/flutter/releases

步骤2:解压安装包到你想安装的目录,如:cd /Users/ksj/Desktop/flutter/unzip /Users/ksj/Desktop/flutter/v0.11.9.zip.zip

步骤3:添加Flutter相关工具到path中:export PATH=`pwd`/flutter/bin:$PATH3.运行Flutter命令安装各种依赖

运行以下命令查看是否需要安装其他依赖项:flutter doctor

该命令检查你的环境并在终端窗口中显示报告。Dart SDK已经捆绑在Flutter里了,没有必要单独安装Dart。仔细检查命令行输出以获取可能需要安装的其他软件或进一步需要执行的任务(以粗体显示)。如下代码中粗体提示表示,Android SDK缺少命令行工具,需要下载并且提供了下载地址,通常这种情况只需要把网络连好,VPN开好,然后重新运行flutter doctor命令。[-] Android toolchain - develop for Android devices • Android SDK at /Users/obiwan/Library/Android/sdk x Android SDK is missing command line tools; download from https://goo.gl/XxQghQ • Try re-installing or updating your Android SDK, visit https://flutter.io/setup/#android-setup for detailed instructions.注意 一旦你安装了任何缺失的依赖,需再次运行flutter doctor命令来验证你是否已经正确地设置了,同时需要检查移动设备是否连接正常。4.添加环境变量

使用vim命令打开~/.bash_profile文件,添加如下内容:export ANDROID_HOME=~/Library/Android/sdk //android sdk目录export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-toolsexport PUB_HOSTED_URL=https://pub.flutter-io.cn //国内用户需要设置export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn //国内用户需要设置export PATH=/Users/ksj/Desktop/flutter/flutter/bin:$PATH // 直接指定flutter的bin地址注意 请将PATH=/Users/ksj/Desktop/flutter/flutter/bin更改为你的路径即可。

完整的环境变量设置如图1-13所示。

设置好环境变量以后,请务必运行source$HOME/.bash_profile刷新当前终端窗口,以使刚刚配置的内容生效。图1-13 MacOS环境变量设置5.编辑器设置

如果使用Flutter命令行工具,可以使用任何编辑器来开发Flutter应用程序。输入flutter help在提示符下查看可用的工具。但是笔者建议最好安装一款功能强大的IDE来进行开发,毕竟开发调试运行打包的效率会更高。由于MacOS环境既能开发Android应用也能开发iOS应用,Android设置请参考1.2.1节“Windows环境搭建”中的“安装Android Studio”,接下来我们会介绍Xcode使用方法。(1)安装Xcode

安装最新Xcode。通过链接下载:https://developer.apple.com/xcode/,或通过苹果应用商店下载:https://itunes.apple.com/us/app/xcode/id497799835。(2)设置iOS模拟器

要准备在iOS模拟器上运行并测试你的Flutter应用。要打开一个模拟器,在MacOS的终端输入以下命令:open -a Simulator

可以找到并打开默认模拟器。如果想切换模拟器,可以打开Hardware下在Device菜单选择某一个模拟器,如图1-14所示。

打开后的模拟器如图1-15所示。

接下来,在终端运行flutter run命令或者打开Xcode,如图1-16所示选择好模拟器。点击运行按钮即可启动你的应用。(3)安装到iOS设备

要在苹果真机上测试Flutter应用,需要一个苹果开发者账户,并且还需要在Xcode中进行设置。图1-14 选择iOS模拟器图1-15 iOS模拟器效果图图1-16 Xcode启动应用

1)安装Homebrew工具,Homebrew是一款MacOS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。下载地址为:https://brew.sh。

2)打开终端并运行一些命令,安装用于将Flutter应用安装到iOS设备的工具,命令如下所示:brew updatebrew install --HEAD libimobiledevicebrew install ideviceinstaller ios-deploy cocoapodspod setup

提示 如果这些命令中有任何一个失败并出现错误,请运行brew doctor并按照说明解决问题。

接下来需要Xcode签名。Xcode签名设置有以下几个步骤:

步骤1:在你Flutter项目目录中通过双击ios/Runner.xcworkspace打开默认的Xcode工程。

步骤2:在Xcode中,选择导航面板左侧中的Runner项目。

步骤3:在Runner target设置页面中,确保在General→Signing→Team(常规→签名→团队)下选择了你的开发团队,如图1-17所示。当你选择一个团队时,Xcode会创建并下载开发证书,为你的设备注册你的账户,并创建和下载配置文件。图1-17 设置开发团队

步骤4:要开始你的第一个iOS开发项目,可能需要使用你的Apple ID登录Xcode。任何Apple ID都支持开发和测试。需要注册Apple开发者计划才能将你的应用分发到App Store。请查看https://developer.apple.com/support/compare-memberships/这篇文章。登录界面如图1-18所示。图1-18 使用Apple ID

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载