Day 5:Hello....android world! 建立第一个KMM专案(Android)

Keyword: Android Studio,AVD Manager

到Day6完成第一个KMM专案的Code放在

KMMDay6


建立KMM专案

今天让我们来尝试第一个KMM专案

首先打开Android. Studio 在上方功能列选择 File → New →project

会出现以下画面 拉到最底下就可以看到 KMM的选项了

https://github.com/officeyuli/itHome2021/raw/main/day5/Select%20KMm.jpg

下个画面长这样,如果想要修改专案的名字记得在Name的栏位修改

https://github.com/officeyuli/itHome2021/raw/main/day5/Creat%20KMM%20Step%201.jpg

再下个画面,如果有需求,可以为Android iOS 共用的Shared修改名字

如果要不想使用CocoaPods 管理iOS的Framework 可以把红框的地方改掉

https://github.com/officeyuli/itHome2021/raw/main/day5/Create%20KMM%20Step%202.jpg

按下Finish就会建立一个KMM范例专案了

建立Android 模拟器

(如果打算用实机测试的可以跳过这段)

要正式执行一个App,需要一个模拟器.首先点工具列的Tools→ AVD Manager 可以看到以下的画面

https://github.com/officeyuli/itHome2021/raw/main/day5/AVD%20Manager%200.jpg

(我已经有一台先建好的了 如果从没建立过模拟器 中间列表的部分会是空的)

点选下方的 "Create Virtual Device"

https://github.com/officeyuli/itHome2021/raw/main/day5/AVD%20Manager%202.jpg

可以从中选择想要建立的模拟器机型,没有特别的需求可以选Pixel的版本,

然後在这个页面可以选择Android的版本,Api Level 26~28目前都有蛮多人使用的.如果之前没使用过,需要先点版本旁边的Download抓下这个版本的映像档

https://github.com/officeyuli/itHome2021/raw/main/day5/AVD%20Manager.jpg

选择好版本後就能按下Finish建立一个模拟器.

试跑一下

在上方的工具列,有一个用来编译的快捷列.

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

最左边这个有一个小机器人的头的是执行模块,点开也能发现iOSApp的选项也在里面.先选择androidApp吧

中间的是刚刚建立的模拟器,如果建立了很多模拟器可以在这边选择.

前两项准备好後,点选右边的绿色三角形 "Run",让Android Studio编译并执行.

通常这时候....会发生错误....

https://github.com/officeyuli/itHome2021/raw/main/day5/java11%20error.jpg

这是由於Android Studio内建的Java只有到8版,而新建专案的Gradle需要到11版的Java

修正Gradle问题

有提供三个解法

1.更改Android Studio的设定

2.更改电脑的JAVA_HOME环境变数

3.到专案内部设定

这边我们选择比较简单的方法1.

请先点选左上角的Android Studio→Prefenerces

在之中搜寻Gradle

https://github.com/officeyuli/itHome2021/raw/main/day5/Gradle%20jdk%20version.jpg

点开Gradle JDK的选项 选择其中的Download JDK

选择我们需要的Version 11 开始下载

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

下载完成後把Gradle JDK的选项调整成我们刚刚下载完的JDK 11 按下确定

完成

之後再次点选绿色三角形的Run 开始编译执行

模拟器上就会出现刚刚编译好的App

https://github.com/officeyuli/itHome2021/raw/main/day5/Android%20Project.jpg

如果成功跑起来,绿色三角形的Run会换成另外一种图案,不要紧功能还是相同的.

https://github.com/officeyuli/itHome2021/raw/main/day5/stop%20and%20rebuild.jpg

终於成功了 明天将会让这个专案在iOS上也跑起来


<<:  [Day 5] Ktor 微框架就如同一间毛胚屋,先来列出想要整合的框架及实作的功能清单

>>:  [前端暴龙机,Vue2.x 进化 Vue3 ] Day1.在认识vue之前(一)

【第一天 - Flutter 生命周期+基本观念介绍】

什麽是 StatefulWidget? 他是一个具备 State(状态)的元件,里面所有可变状态的子...

Day15 单纯贝氏分类器实作

https://github.com/PacktPublishing/Machine-Learni...

从 JavaScript 角度学 Python(24) - 继承

前言 前一篇已经提前预告接下来将会讲继承了,所以这一篇当然就是会介绍继承啦~(废话) 继承的概念 继...

Day 4 如何规划拟定隐私三宝

隐私三宝包含了隐私条款、服务条款、Cookie policy,其中隐私条款若要自己从无到有生出来,似...

[MySQL] MySQL重置密码及修改密码

此文章记录在Linux上 MySQL重制密码及修改密码方式 一、 重置密码 使用指令找到MySQL读...