Day 6:Hello....iOS world! 建立第一个KMM专案(iOS)

Keyword:Xcode,simulator
到Day6完成第一个KMM专案的Code放在
KMMDay6


第一次开启KMM专案的iOS部分,还会需要一些设定.

首先让我们现在专案里面找到iOS的专案文件

在Android Studio内切换展示页面 由"Android" 换成”Project“

切换的地方通常在左上角工具列的下方

https://github.com/officeyuli/itHome2021/raw/main/day5/chage%20display%20type.jpg

Android 页签只会显示有关於Android的部分,如果想要看到iOS的部分,则需要把整个专案的档案都显示出来.

可以在iOSApp的资料夹底下,找到一个xcodeproj档案,这个就是Xcode的专案设定档案

https://github.com/officeyuli/itHome2021/raw/main/day5/iOS%20Path.jpg

在资料夹上面,右键选择: Open in... →Finder 使用Finder打开专案档案所在的资料夹

在Finder里面,Xocde专案应该会像这样

https://github.com/officeyuli/itHome2021/raw/main/day5/iOS%20in%20Finder.jpg

使用Xocde 打开专案

https://github.com/officeyuli/itHome2021/raw/main/day5/xcode.jpg

上方偏左的区块与Android Studio类似 是模拟器的位置.

https://github.com/officeyuli/itHome2021/raw/main/day5/Generic%20iOS%20Device.jpg

如果没有更新到最新版的macOS与Xcode 这边就会是 Generic iOS Device

如果已经更新到最新版,则这边就会出现模拟器.

https://github.com/officeyuli/itHome2021/raw/main/day5/iOS%20simulateor.jpg

点选左边的三角形Run 便会开始编译执行

这时候...有可能会出现问题...

https://github.com/officeyuli/itHome2021/raw/main/day5/No%20such%20module.jpg

原因是因为共用的shared部分还没编译好,Xcode认不得.

修正Module问题

回到Android Studio,我们需要先编译好shared的部分,才可以让iOS也享用到.

在右手边的Gradle里面,可以找到预先写好的一些Task.

https://github.com/officeyuli/itHome2021/raw/main/day5/Task.jpg

这次我们要编译shared,所以选择shared内的”Build“ Task,开始建立shared的编译

(如果找不到Tasks,有可能是因为Gradle编译有问题,可以在File → Invalid Cache/Restart 清除Cache後重新开启,让Gradle重新再跑一次)

https://github.com/officeyuli/itHome2021/raw/main/day5/Task2.jpg

完成

执行完成後 在Xcode应该就能正常执行了

结果如下

https://github.com/officeyuli/itHome2021/raw/main/day5/iOS%20Display.jpg

之後也能在Android Studio直接编译iOS的版本了

明天我们来看看这个范例专案的内容


<<:  Day 10. Hashicorp Nomad: Job Priority

>>:  【Day01】楔子-关於永丰金融APIs

Leetcode: 94. Binary Tree Inorder Traversal

今天写经典的tree traversal - inorder inorder: 左边先拜访,接着中间...

Java 开发 WEB 的好平台 -- Grails -- (4) 建立第一个 Controller

在Grails 里建立 controller 是一件很愉快、简单的事情。基本上,你无须使用任何 an...

Day28-介绍 Redux DevTools

这篇要介绍的是 Redux DevTools,是一个可以纪录及操作存在 Redux store 内的...

Day24 - 关於共识演算法与容错机制

这几篇文章可能都会比较偏技术一些,会尽量解释简单,让大家容易理解,我们就继续看下去。 常见的共识演算...

LeetCode解题 Day13

1189. Maximum Number of Balloons https://leetcode....