189 8069 5689

怎么搭建flutter,怎么搭建测试环境

ios flutter 混编

最近在集成flutter进项目

创新互联建站是一家集网站建设,石鼓企业网站建设,石鼓品牌网站建设,网站定制,石鼓网站建设报价,网络营销,网络优化,石鼓网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

以收集编译产物并以cocopods方式集成

产物大概放入两个pod库

这个暂且叫pod1,pod1放flutter.framework,第三方plugin.a,自己写的基础plugin,比如networking,hud等等(由于是混编,不可避免存在很多原生基础组件,所以能公用的基础组件都会弄一个flutter-plugin桥接)

第二个pod2放编译之后的app.framwork,注册文件GeneratedPluginRegistrant,以及各个业务模块.a(有可能没有)结构大概如下面

podspec大概如下

主工程引入这两个pod库即可

接下来从零开始搭建上文所说的

先创建一个flutter module

这个是主flutter工程,用来集成businessModule以及生成app.framework

结构如下图

再生成一个业务工程

注意此时还需要进入example生成ios和Android工程,不然无法单独编译运行

这样 这个单独的业务模块就可以单独跑起来了

此时主flutter工程和业务工程均搭建完毕

在主工程pubspec.ymal文件讲两个工程关联

好了 接下来就是编写脚本收集产物了

编译完成之后会在flutter主工程product生成如下文件

将上面文件分类收集做成文章开头的pod1,pod2 ,在native工程引入即可

在集成flutter的过程中 踩不少坑 也阅读很多前辈的文章,在此一并感谢

flutter语言框架如何快速搭建视频通话场景?

有两种方法,一,自己找人才从零开始研发,当然要耗费对应的时间和资金,并且需要多次调试,不能绝对保证能提供良好的体验感;二,直接接入第三方互联网巨头研发的视频通话SDK,要想快速搭建的话,建议选择后者,即构科技的产品就不错,可以提供90天的体验。

Flutter-使用Sentry上报异常搭建

当前教程只负责搭建Flutter模块

一、需要搭建Sentry服务 Sentry搭建教程

二、熟悉Flutter异步异常同步异常

一、main方法中将所有初始化操作都包含在runZoned中[1.17.0版本以上推荐使用runZonedGuarded]

二、区分异步异常与同步异常

三、教程中Map对象中有\n符号,是为了在服务页面(html页面自动解析\n符号)显示容易解读

一、异常上报数据

1、错误标题

2、错误详细位置

3、设备信息

4、用户信息

二、用到插件

1、sentry: "=3.0.0 4.0.0";以官网为准 Flutter官方推荐使用样例

2、device_info;获取设备信息,版本以插件库为准

三、异常分类处理

1、RangeError ;dart异常

2、FlutterErrorDetails;页面渲染异常

3、MissingPluginException; 服务异常

4、DioError ;Dio请求异常

四、异常处理

1、Android信息处理

2、IOS设备信息获取

3、获取设备信息

Sentry上报

Flutter 快速搭建项目脚手架

GITHUB地址:

我们依赖国际化的两个package:

intl_translation 是用来生成arb的翻译文件,所以添加的依赖只用在dev环境下

这里我们会创建一个代理文件

Provider使用起来学习成本更小而且管理容易

Provider

Provider学习文章

创建一个通知的基类

主题和语言改变发出通知

在main中注册

主题相对来说比较简单,不需要依赖太多外部的框架

global设置

在上面写的函数中可以找到,添加了通知

shared_preferences

shared_preferences很多人都已经用过了不做过多的介绍.主要说明下,如何把原来异步的任务变成同步.

shared_preferences 异步有两个地方,一个是初始一个是存储

项目初始化的时候,可以将shared_preferences初始化然后存储下来,shared_preferences在get的时候是同步的,我们就不需要处理了,存储的时候我们依旧是异步的,这样能解决app启动是需要初始化的参数问题

1.NavigationService 不需要context的push工具

2.ScreenService获取屏幕宽高工具

3.EventBusService 通知工具

.....

Flutter Web基于Docker nginx的网站搭建教程

Nginx 是一个高性能的 HTTP 和反向代理 web 服务器,我们可以把我们应用发布到 Nginx上,提供IP地址给外部访问。

① 进入容器:

② 切换到容器的配置文件目录

③ 查看配置文件

或者安装并通过vim打开

在默认配置下,网页文件位于/usr/share/nginx/html 目录下,我们只需将编译后的flutter web文件放在该目录下可以。

vscode flutter 环境搭建

环境准备阶段:

android-studio 版本:android-studio-ide-191.5977832-windows.exe 3.5.2

flutter版本:stable 版本 (完成系统环境变量 path配置)

dart版本:2.12.0 (完成系统环境变量 path配置)

完成相关软件安装。

配置flutter相关SDK及andriod studio路径:

flutter config --android-sdk="C:\Users\Administrator\AppData\Local\Android\Sdk"

flutter config --android-studio-dir="D:\Program Files\Android\Android Studio"

执行flutter doctor运行成功。

夜神模拟器地址:D:\Program Files\Nox\bin (完成系统环境变量 path配置)

andriod SDK tools:C:\Users\Administrator\AppData\Local\Android\Sdk\platform-tools (完成系统环境变量 path配置)

nox_adb.exe connect 127.0.0.1:62001

dart SDK:D:\software\dartsdk-windows-x64-release\dart-sdk\bin

将C:\Users\Administrator\AppData\Local\Android\Sdk\platform-tools 下面adb.exe 复制至D:\Program Files\Nox\bin覆盖

adb.exe,此外重新复制adb.exe命名为nox_adb.exe,替换原有的nox_adb.exe。

cdm 输入nox_adb version 及adb version发现版本一致。

启动野神模拟器,输入adb devices发现虚拟设备,执行flutter devices发现 127.0.0.1:62001 设备。

修改C:\learn_flutter\first_flutter\android\gradle\wrapper\gradle-wrapper.properties

distributionUrl=

修改C:\learn_flutter\first_flutter\android\build.gradle

buildscript {

ext.kotlin_version = '1.3.50'

repositories {

// google()

// jcenter()

maven { url ' ' }

maven { url ' ' }

maven { url ' ' }

}

}

allprojects {

repositories {

// google()

// jcenter()

maven { url ' ' }

maven { url ' ' }

maven { url ' ' }

}

}

修改:C:\win-flutter\flutter\packages\flutter_tools\gradle\flutter.gradle

buildscript {

repositories {

// google()

// jcenter()

maven { url ' ' }

maven { url ' ' }

maven { url ' ' }

}

dependencies {

classpath 'com.android.tools.build:gradle:4.1.0'

}

}

//private static final String DEFAULT_MAVEN_HOST = " ";

private static final String DEFAULT_MAVEN_HOST = " ";

修改:C:\win-flutter\flutter\packages\flutter_tools\gradle\resolve_dependencies.gradle

repositories {

google()

jcenter()

maven {

//url "$storageUrl/download.flutter.io"

url " "

}

}

执行 flutter run启动成功。

环境搭建坑点在于JDK兼容问题以及网络问题。


当前文章:怎么搭建flutter,怎么搭建测试环境
标题来源:http://cdxtjz.cn/article/dsecjge.html

其他资讯