Android in Flutter 1
Android in Flutter 1(Android 项目基础)
序
本系列主要说的是,从Android 角度看Flutter
因为Flutter 属于混合开发,开发人员更多的会是从Web,iOS,Android 等各个不同领域入手开发。往往面临配置不熟悉等问题。
(本篇中使用的
IDE 是:Android Studio 2021.2.1 patch 1
FlutterVersion:3.0 )
Android 项目基本结构
项目目录
在Flutter 项目中能看到android 目录
- .gradle -自动化打包的基础的文件目录(隐藏目录),由IDE根据配置自动下载生产
- .idea -Android Studio 的IDE Project 级的配置文件目录(隐藏目录),有IDE自动生成
- app -Android 代码所在目录
- gradle -自动化打包的配置,其中配置了gradle 的版本,目录等信息
- build.gradle -项目级的gradle 文件
- gradle.properties -gradle 打包过程的基本配置文件
- gradlew -打包脚本
- local.properties -一些本地配置文件(android 中非必须),在Flutter 中由Flutter pub 根据 yaml 和 Android Studio IDE的配置生成,其中包括APP 版本号,FlutterSDK 目录,Android SDK 目录等信息
实际开发中,我们更多的会关注app 目录 和build.gradle 目录
如果在新构建的项目中,出现build 失败,如法运行,一般会优先关注gradle 目录,修改gradle-wrapper.properties 的版本,已经检查IDE是否成功下载文件(生成.gradle 目录)
MainActivity
Flutter 项目在Android 中的运行容器
Mainfest
Android 中的描述文件,总结来说,就是描述了你这个APP 有什么,用了什么,和APP 外部交互需要什么。
详细内容可以看这里:应用清单概览
一般APP 中需要关注以下几个标签<application />
<activity />
<provider />
provider 描述的是一些APP交互用的信息,在Android 10 以后,一般APP 不能直接读取外部存储(app 私有目录以外的文件),如果需要读取,需要经过provider 声明,并且在meta-data 中描述 android.support.FILE_PROVIDER_PATHS
<uses-permission />
应用的权限声明
权限列表
<queries/>
应用可以向外调用的协议
BuildGradle
项目级别的BuildGradle
路径是:android/build.gradle
项目级别的build.gradle
中,配置的是整个项目的信息
在项目中的第三方库的下载maven 地址,在这里配置,build 会从上往下检索。
Module 级别的build.gradle
路径是 android/app/build.gradle
我们需要关注几个点
1.
这里是加载这个gradle 中会使用的插件,类似 flutter 中的import
其中
apply plugin: ‘com.android.application’ 表示这个Module是一个主Module
apply plugin: ‘com.android.library’ 表示这个Module 是一个library
在新版本的Gradle中,apply plugin 会有这样的写法
plugins {
id ‘com.android.library’
}
这里配置整个module 的信息,其中versionCode 可以看到是读取flutterVersionCode 获取的,(如果这个module 是application)
可以看到是从这里加载的信息
## 多变体
APK 和 AAB 的区别
APK 是原始的安装包
AAB 用于上传到Google Play (华为商城也开始推行这个包)
相比APK AAB ,在市场分发的时候,会根据当前手机设置的语言,屏幕分辨率,CPU 架构去分发不同的资源包。
能显著减少安装体积
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgafihh
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01