欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

flutter打包很大,flutter抓包

flutter 常見問題之a(chǎn)pp體積為何比較大

細(xì)心的開發(fā)者會發(fā)現(xiàn)flutter構(gòu)建的App體積比native的大一些,是什么原因造成App體積大呢?

創(chuàng)新互聯(lián)提供高防物理服務(wù)器租用、云服務(wù)器、香港服務(wù)器、西部信息服務(wù)器租用

其實flutter 在release時App體積和native的大小差不多,而debug時體積通常會大。debug版本體積較大是為了Hot reload和快速編譯。如果有flutter開發(fā)經(jīng)驗的朋友都體驗過,如果您修改一下App的背景顏色,只需save一下就可以立刻看到修改后效果。我稱之為“像藝術(shù)家一樣在創(chuàng)造App”,因此為了實現(xiàn)這些目標(biāo),提高開發(fā)的效率,debug將占用全部資源。而當(dāng)我們構(gòu)建release版時,flutter又會采用AOT策略,提高App運行效率,release版只打包必需的資源,因而體積又會減少。

另外,flutter團隊也一直在尋找減小程序大小的方法。

Flutter ios打包 ipa

1.keychain 鑰匙串訪問

2.申請開發(fā)證書

3.注冊Bundle ID

4.配置開發(fā)證書 (生成.mobileprovision文件)

5.安裝證書

6.打包ipa

7.開發(fā)團隊如何公用證書

進入以下程序

此文件保存到你想保存的地方,后面生成證書有用。

1.打開 蘋果開發(fā)者中心 ( )

2.按照以下圖片步驟走:

上面省略的步驟,按照具體需要選擇,基本是“傻瓜式點擊

到這bundle id就OK了

.mobileprovision文件格式的配置文件是讓開發(fā)者的項目(APP)能有真機調(diào)試,發(fā)布的權(quán)限。

配置開發(fā)證書,就會需要你設(shè)置,在這個項目中添加哪些設(shè)備作為真機調(diào)試的設(shè)備

1.Xcode打開以下文件夾

2.三個必填項

4.選擇發(fā)布平臺:

1.本地安裝完.cer證書文件

輸入密碼之后點擊好,即可生成.p12文件

flutter-android打包

android打包教程:

1、在AndroidManifest中確定app的名字:

2、在app/build.gradle中設(shè)置安卓兼容版本targetSdkVersion和最低版本minSdkVersion,還有編譯版本compileSdkVersion,還有設(shè)置包名applicationId,一般不用設(shè)置,除非你是要變更

4、添加啟動圖標(biāo),圖標(biāo)資源文件的位置如下:

看到這個文件的時候,就說明創(chuàng)建證書成功了

6、配置項目證書

在android目錄下新建一個file文件key.properties,然后填寫證書的信息如下:

7、啟用混淆

在app路徑中添加proguard-rules.pro文件(這個百度下就好了)

8、構(gòu)建flutter build apk

flutter 打包web

先運行下,看當(dāng)前flutter 是否支持web項目, 如果沒有enable-web: true 則輸入 flutter config --enable-web

這時候項目中就包含了web文件夾.

輸入 flutter build web 就可以在build文件夾中生成web文件, 將它放到到tomcat或者其他容器就能訪問了!

附上項目的測試連接:

參考:

Flutter Android端集成排坑 - armeabi 適配 & FlutterBoost

Flutter可以算是當(dāng)下最火熱的新技術(shù)之一,我現(xiàn)在所在團隊也準(zhǔn)備將Flutter技術(shù)應(yīng)用到線上工程中。

關(guān)于混合工程,官方文檔其實寫的已經(jīng)比較清楚了,按著文檔走一般問題不大,

但是有一點值得注意的是,F(xiàn)lutter工程引入的庫的gradle的 buildTypes 要與原工程保持一致,如果不一致需要手工添加。

進入正題,現(xiàn)在Flutter官方默認(rèn)只提供armeabi-v7a、arm64-v8a、x86和x86-64,其中x86和x86-64是為模擬器準(zhǔn)備的。目前我們使用的SDK大部分只使用了armeabi架構(gòu),直接使用我們會遇見找不到 libflutter.so,libapp.so 的情況,所以我們需要對FlutterSDK做一定的改造。

首先我們要了解下Flutter編譯產(chǎn)物,因為不同版本產(chǎn)物是不同的,這里我們只針對Flutter 1.9.1-hotfixes來說。除了資源文件之外,F(xiàn)lutter打包會生成兩個非常重要的so庫,他們分別是 libflutter.so,libapp.so 。其中 libflutter.so 是Flutter的SDK產(chǎn)物而 libapp.so 正是我們編寫的dart文件的產(chǎn)物。默認(rèn)情況下,這兩個文件都會出現(xiàn)在armeabi-v7a中,因此我們要作出對應(yīng)的改造。

libflutter.so 位于FlutterSDK中,這里順帶提一句,除了這對不同CPU架構(gòu),它還分為Debug版和Release版,它們的區(qū)別在于Debug是為JIT編譯方式打造的,體積較大而Release是為AOT編譯方式打造的,體積很小。對 libflutter.so 的改造,只要將其移動文件路徑即可,運行以下腳本即可,此腳本來自美團分享的Flutter文章。

移動完了 libflutter.so 之后我們打包發(fā)現(xiàn), libapp.so 仍然會出現(xiàn)在armeabi-v7a中,所以第二部我們就是移動 libapp.so 。這個需要更改 flutter.gradle ,我們在 flutter.gradle 的45行可以看到如下定義,它定義了我們的環(huán)境。

在524行我們可以看到,abiValue的取值就是根據(jù)上述定義值。

所以結(jié)論很簡單,只要將

private static final String ARCH_ARM32 = "armeabi-v7a";

改為

private static final String ARCH_ARM32 = "armeabi";

就可以完成對與 libflutter.so 的移動。

前期工作我們都做好了,打成aar就非常簡單了

直接使用 flutter build aar --target-platform android-arm

打出來后可以解壓檢查下 libflutter.so,libapp.so 是否都在armeabi文件夾下即可。

說完了armeabi適配問題,這里下說下有關(guān)于有關(guān)于FlutterBoost的接入。這個東西接入有兩點要注意。

在主app內(nèi)加上即可,常規(guī)操作,強制統(tǒng)一support包的版本號

注釋flutter.gradle第655行。因為編譯過程中,會去初始化插件項目的buildType下面的debug配置,而插件項目下并未配置debug,導(dǎo)致報錯。

如果發(fā)現(xiàn)文章中有錯誤或者有更好的解決方案歡迎指正留言,當(dāng)然如果本篇文章幫助你解決了問題,也不要吝嗇你的感謝。謝謝各位。

Flutter 的Android 、iOS 打包

Flutter 項目雖說是跨平臺項目,但是項目的名稱還是需要在不同的平臺設(shè)置,不同平臺的設(shè)置位置是:

1、 Android 項目名字配置是在 android/app/src/main/AndroidManifest.xml 文件中的 application 下的 android:label 。如下圖所示:

2、 iOS 項目名字配置是在 ios/Runner/Info.plist 文件中的 dict 下的 keyCFBundleName/key stringtestapp/string 。如下圖所示:

Flutter 項目雖說是跨平臺項目,但是項目的 Logo 圖標(biāo)還是需要在不同的平臺設(shè)置,不同平臺的設(shè)置位置是:

1、 Android 項目 Logo 配置是在圖片放置在 android/app/src/main/res 下的對應(yīng)目錄下:

mipmap-mdpi : 48 _ 48

mipmap-hdpi : 72 _ 72

mipmap-xhdpi :96 _ 96

mipmap-xxhdpi :144 _ 144

mipmap-xxxhdpi :192 * 192。如下圖所示:

然后,在 android/app/src/main/AndroidManifest.xml 路徑下的 AndroidManifest.xml 文件中的 android:icon 。如下圖所示:

2、 iOS 項目 Logo 的配置是在 ios/Runner/Assets.xcassets/AppIcon.appiconset 文件下,直接更換圖片,名字不要改動 。如下圖所示:

1、使用 cd 指令進入項目(testapp)的根目錄(方便后面操作),如下圖所示:

填寫對應(yīng)的值,如下圖所示:

1、 build.gradle 文件的位置,如下圖所示:

2、在 build.gradle 中配置 key.propreties 的全局變量,

如下圖所示:

3、 build.gradle 文件中進行簽名配置。

如下圖所示:

注意: buildTypes 中的 signingConfig signingConfigs.debug 可以變更為 signingConfig signingConfigs.release ,這樣在打包的時候,直接可以 flutter build apk ,否則就執(zhí)行 flutter build apk --release 。如圖所示:

1、 cd 進入功能(testapp) 的根目錄,如下圖所示:

2、執(zhí)行 flutter build apk 指令,如下圖所示:

我們打包成功, 生成的 apk 包在 build/app/outputs/apk/release/app-release.apk 目錄下,如下圖所示:

1、將真機通過 USB 鏈接到電腦上,如下圖所示:

2、然后,在項目的根目錄執(zhí)行 flutter install , 如果出現(xiàn)電腦同時有多個設(shè)備時,就執(zhí)行 flutter install -d deviceid 。如下圖所示:

3、設(shè)備的安裝過程如下:

1、必須一個 Xcode 開發(fā)工具

2、如果是 Window 的電腦,請安裝 Mac 虛擬系統(tǒng),進行安裝 Xcode .

1、打開目錄下的 Runner.xcworkspace 工程。

如下圖所示:

2、在 ios 工程中配置 Signing Capabilities , 如下圖所示:

1、進入項目的根目錄

2、打包指令 flutter build ios --release

如圖所示:

3、使用 Xcode 工具進行打包

如圖所示:

注意:進行該步驟,必須執(zhí)行 flutter build ios --release 否則會報錯。

打包成功,如下圖所示:

分享題目:flutter打包很大,flutter抓包
網(wǎng)站路徑:http://aaarwkj.com/article0/dsspiio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作移動網(wǎng)站建設(shè)、搜索引擎優(yōu)化、Google外貿(mào)建站、品牌網(wǎng)站設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化
未满十八勿进黄网观看| 天堂av在线资源观看| 美女性生活免费视频网站 | 国产午夜亚洲精品羞羞网站| 亚洲一区二区三区久久精品| 国产精品亚洲av在线| 国产精品亚洲视频欧美视频| 亚洲综合中文字幕精品| 日本不卡二区高清三区| 99热免费精品在线观看| 日本女优中文字幕久久| 91日本精品免费在线视频| 亚洲日日夜夜噜噜爽爽| 九九视频在线精品免费观看| 欧洲亚洲精品免费二区| 在线免费观看日本91| 精品国产一区二区成人| 男人的天堂久久精品激情| 国产自愉怕一区二区三区| 亚洲,日韩,欧美久久综合| 成人在线视频国产自拍| 中文字幕日本人妻乱码| 亚洲男人成人性天堂网站| 国产91在线视频播放| 亚洲小说欧美激情另类| 日韩精品女性三级视频| 国产精品日韩一区视频| 手机在线看国产后入| 日本一区二区欧美亚洲国产| 日本中文字幕黄色人妻| 日本午夜熟女九色视频| 麻豆映画传媒在线播放| 亚洲一区成人免费电影| 欧美一区二区三区久久束缚| 男人av天堂手机在线| 免费黄色日韩在线观看| 91在线免费观看国产精品| 国产熟女av一区二区| 天堂av在线观看播放| 亚洲欧美一区二区中文字幕| 男女做爰高清免费视频|