初见Flutter!框架简单介绍以及构建可发布的签名Apk包

哈喽!好久不见,算起来我已经一个多月没更新博客了,近期刚刚完成了一个项目,正好抽出时间整理一下学到的东西并且写写博客。

关于flutter

开始使用flutter还是春节后的事情,其实之前很早就想学一下flutter了,毕竟谷歌出的技术总是不会太差的,无奈一直没有时间和做app的需求,这次接触了flutter之后仿佛发现了新大陆,原来开发app还能这么方便,真的颠覆了我原来的认知啊,热更新也太好用了吧,修改后立刻显示出新的效果,根本不需要像开发原生Android那样重新编译再安装,如果一开始就是这个的话,那得节约多少生命啊~ 不过刚刚接触的时候,有一点点点不习惯,因为flutter用的是响应式编程,不像我们平时用的超级熟练的MVC,所以一开始会有点疑惑,不过只要跟着官网的教程走,自己写完几个小demo就基本能入门了,这响应式编程很像react(反正我没用过,做前端的大佬说很像)。 然后dart语言的话,怎么说嘞,感觉是一种Java/JavaScript的混合体,据说本来是想开发出来替代js地位的....很多写法真的和js很像,例如单线程+async/await操作这些,然后它又是一个强类型语言......总之语言特性的话,还不是很熟悉,写起来感觉还可以,但是也没什么特别亮眼的地方~

进入正题

前面说了一下关于flutter的,现在进入本文的正题,如何构建签名的apk包。 使用AndroidStudio开发的话,里面内置的发布apk功能是有点问题的,好像没办法通过IDE生成,所以我们用官网的方法,使用flutter命令来做。

修改AndroidManifest信息 首先要编译Android的APP嘛,AndroidManifest.xml是肯定要修改的,涉及到什么权限,应用名称,应用图标,这些就先自己修改哈,本文不再赘述。

配置签名文件 这个签名文件,大家做Android开发的都有的啦,没有的话,使用keytool生成一个。

keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
参数说明:
-genkey      在用户主目录中创建一个key.jks文件
-v           显示密钥库中的证书详细信息
-alias       产生别名
-keyalg      指定密钥的算法  
-keystore    指定密钥库的名称(产生的各类信息将不在.jks文件中
-validity    指定创建的证书有效期多少天
-keysize     指定密钥长度

配置key.properties<app dir>/android/目录下,创建一个key.properties文件 <app dir>代表工程的根目录,下同。

内容如下:

storePassword=keystore密码
keyPassword=key密码
keyAlias=密钥别名
storeFile=密钥路径

配置Gradle 编译Android项目,Gradle是必不可少的啦! gradle文件路径<app dir>/android/app/build.gradle

找到android {,在这一行上面配置key.properties信息:

def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))

继续向下,找到buildTypes {,在上面配置signingConfigs

signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile file(keystoreProperties['storeFile'])
            storePassword keystoreProperties['storePassword']
        }
    }

修改buildTypes

buildTypes {
        release {
           signingConfig signingConfigs.release
        }
    }

上面的操作都正确完成了的话,就可以开始构建签名的apk包了,在APP项目目录中打开终端,输入flutter的构建命令:

flutter build apk
构建完会提示apk包的路径,可以选择使用adb来安装,也可以直接使用flutter install来安装~

About


Learn more on my WeChat Official Account:DealiAxy Every post was in my blog:blog.deali.cn

欢迎交流

交流问题请在微信公众号后台留言,每一条信息我都会回复哈~ - 微信公众号:画星星高手 - 打代码直播间:https://live.bilibili.com/11883038 - 知乎:https://www.zhihu.com/people/dealiaxy - 简书:https://www.jianshu.com/u/965b95853b9f