真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

flutter升級app,flutter 升級

flutter 升級適配 android12

In gradle-wapper.property:

專注于為中小企業(yè)提供成都網(wǎng)站制作、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)祁縣免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。

" distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip"

in build.gradle:

???dependencies{

?? classpath'com.android.tools.build:gradle:7.2.1'

?? classpath"org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

}

參照:;authuser=0#updating-gradle

四大組件中添加?android:exported="true"

Flutter設(shè)置APP版本與構(gòu)建版本

當一個純Flutter APP開發(fā)完成,我們要打包發(fā)布到App Store和各大安卓市場,這時候我們需要設(shè)置APP的版本號。

如果我們在使用原生iOS或者Android開發(fā)的時,我們會在info.plist中設(shè)置 version 和 build 或是在build.gradle中設(shè)置 versionName 和 versionCode ,他們分別表示APP的版本和構(gòu)建版本。

但是我們在使用Flutter管理APP版本時,打開 pubspec.yaml 只看到一個 version 字段。這時候我們應(yīng)該怎么設(shè)置APP的 version 和 build 呢?

我們在pub上隨便找一個Flutter的組件,例如官方的 camera ,我們可以看到截止目前為止最新的版本為: camera: ^0.5.2+1 ??吹竭@里,我想大家都明白了,Dart采用的是加號式的版本描述方式, + 前面是版本號, + 后面是當前版本的build號。所以我們設(shè)置APP的版本號和build次數(shù),在這里設(shè)置即可,例如: version: 1.2.0+1 。

當我們新建一個Flutter工程的時候,我們分別使用Xcode和Android Studio打開iOS和Android的工程可以看到,iOS中的 version 和 build 的值分別為 FLUTTER_BUILD_NAME 和 FLUTTER_BUILD_NUMBER :

同樣我們打開Android工程可以看到有如下定義:

事實上,F(xiàn)lutter在編譯的時候會生成 ios/Flutter/Generated.xcconfig 和 android/local.properties 文件。這兩個文件由Flutter編譯自動生成,不可更改。記錄了包含SDK路徑或者文件路徑,版本信息,環(huán)境配置(release/debug)等信息。原生工程獲取版本信息的變量就定義在這兩個文件里面。

Flutter升級之后項目不能運行

flutter運行之后報了這個錯,不能夠運行。

在結(jié)果上面會提示appt2等錯誤,其實錯誤的原因是Androidx支持有問題。

官方解決辦法: (合理打開)

app/build.gradle 下面

在gradle.properties下添加:

重新清理運行,ok。

Flutter 升級空安全攻略

1、升級依賴的插件版本pubspec.yaml(包括example),pub get 解決依賴沖突

2、pubspec.yaml所在路徑下執(zhí)行 dart pub upgrade --null-safety 檢查是否所在flutter工程依賴庫是否都升級到了空安全版本

example示例需要進入example路徑下檢查

1、List默認構(gòu)造方法刪除,改用[];

main.dart文件main方法第一行增加CustomFlutterBinding();

2、flutter clean,刪除所有 pubspec.lock文件 ,pub get

3、FutureOr報錯引入頭文件、import 'dart:async';

4、屬性用優(yōu)先用late 或者 ?聲明,在確定不為空情況才用!

flutter 升級3.0.4

Android V1 升級 V2

(1)舊版方法

import 'package:flutter/material.dart';

import 'package:flutter/services.dart';

(2)新方法:

import 'package:flutter/material.dart';

import 'package:flutter/services.dart';

flutter項目升級2.0過程填坑記錄

在此之前先推薦看大佬的: 填坑指導(dǎo)

iOS需要注意:

1、flutter2.0要求cocoapods 升級到1.9.0

詳情看這篇博客

2、原來flutter項目中的podfile文件是舊版本的ccocoapods了,刪除podfile和對應(yīng)的.lock,然后flutter項目重新運行使用它自動生成的podfile文件

3、安裝CocoaPods

卸載cocoapods:sudo gem uninstall cocoapods

查看cocoapods版本:pod --version

指定版本安裝:

sudo gem install -n /usr/local/bin cocoapods -v 1.9.3(新MacOS系統(tǒng)升級)

不指定版本安裝

sudo gem install -n /usr/local/bin cocoapods

說明 :老項目sdk1.17.0===升級到2.0.1,當前所有操作基于win平臺

到此為止環(huán)境已經(jīng)準備妥當,正式進入項目修改。

所有的插件都要適配到空安全,插件是否支持均會有對應(yīng)說明Null safety,適配過程不確定版本的話,可以使用dio: any,適配完事后再在pubspec.lock文件中查看具體的版本修改過來,實在有部分插件沒有支持的,參考下面

部分插件在適配空安全的版本放棄維護了,得自行更新或?qū)ふ姨娲?,如?flutter_swiper 變?yōu)?flutter_swiper_null_safety ,插件更新后要注意項目中的用法是否需要更新

2.1.1: 以前采用的是 provide 插件共享全局數(shù)據(jù),現(xiàn)在變化為 provider ,用法改變, 點擊參考 ,以防文章丟失,我重復(fù)一遍:

比如:

2.1.2: dio版本升級到4.0.0最新版后,部分用法改變

2.2.1

2.2.2

解決方案:

2.2.3

解決方案:

2.2.4

解決方案:

2.2.5

解決方案:

2.2.6

解決方案:

2.2.7

解決方案:

2.2.8

解決方案: child 換為sliver

2.2.8.1

解決方案: 項目目錄下: android--app-build.gradle --minSdkVersion改為:18 或者19

2.2.8.2

解決方案: 在pubspec.yarm管理里面添加:publish_to

2.2.8.3

解決方案: video_player升級后字段發(fā)生了變化,initialized字段更換為:isInitialized(_controller.value.isInitialized)

2.2.8.4

解決方案:

2.2.8.5

解決方案:

2.2.8.6

解決方案: 方案一:刪除ios目錄下的Podfile.lock 文件然后重新運行 pod install命令

方案二:刪除ios目錄下的Podfile.lock與Podfile文件 重新運行flutter run或flutter build ios

方案三:刪除ios目錄,重新運行 flutter create . 命令,注意有"."這個符號不要忘記

2.2.8.7

這個報錯一般對應(yīng)的就是下面的報錯,注意看后面的報錯信息,看是哪個插件報錯。

解決方案: 把Podfile的版本注釋打開,改為platform :ios, '9.0' 或者是更高的版本

全局替換

1.將new List() 替換為[];

2.TextField的inputFormatters:[WhitelistingTextInputFormatter.digitsOnly] 替換為[FilteringTextInputFormatter.digitsOnly]

3.TextField的inputFormatters:[WhitelistingTextInputFormatter(RegExp("[a-z|A-Z|0-9]"))]替換為FilteringTextInputFormatter.allow(RegExp("[a-z|A-Z|0-9]"))

4.Stack組件中overflow: Overflow.visible改為 clipBehavior: Clip.none;overflow: Overflow.clip改為clipBehavior:Clip.hardEdge

5.ListWheelScrollView組件中clipToSize = false改為clipBehavior: Clip.none,clipToSize = true改為 Clip.hardEdge

6.TextField中maxLengthEnforced: true改為maxLengthEnforcement:MaxLengthEnforcement.enforced

7.FlatButton、RaisedButton、OutlineButton的變化: 官方參考

顏色的屬性發(fā)生了變化,由原來的Color 變?yōu)榱薓aterialStatePropertyColor, 這是未了解決不同狀態(tài)(pressed、hovered、focused、disabled)下按鈕顏色的變化

例如

8.出現(xiàn)如下警告

9.showSnackBar報錯誤

解決方案: Scaffold換為ScaffoldMessenger

10.textSelectionColor棄用

解決方案:

11.charts_flutter升級后屬性報錯

解決方案:

12.flutter 真機調(diào)試無法訪問網(wǎng)絡(luò),dio報錯

解決方案:

android:

ios:

問題12完整參考


標題名稱:flutter升級app,flutter 升級
網(wǎng)頁地址:http://weahome.cn/article/dsdesdp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部