打包
flutter build macos -t lib/main_desktop.dart

導(dǎo)出的 app 上右鍵,選擇 顯示包內(nèi)容
此時(shí)會(huì)打開(kāi)顯示 app 內(nèi)的文件,依次進(jìn)入 Contents - Resources
不出意外就會(huì)看到一個(gè)格式為 icns 的圖片文件,其樣子與 app 的圖標(biāo)一樣,這就是我們想要的 icns,將其拷貝到桌面文件夾:

應(yīng)用圖標(biāo)
sips -z 16 16 logo.png --out icons.iconset/icon_16x16.png
sips -z 32 32 logo.png --out icons.iconset/icon_16x16@2x.png
sips -z 32 32 logo.png --out icons.iconset/icon_32x32.png
sips -z 64 64 logo.png --out icons.iconset/icon_32x32@2x.png
sips -z 128 128 logo.png --out icons.iconset/icon_128x128.png
sips -z 256 256 logo.png --out icons.iconset/icon_128x128@2x.png
sips -z 256 256 logo.png --out icons.iconset/icon_256x256.png
sips -z 512 512 logo.png --out icons.iconset/icon_256x256@2x.png
sips -z 512 512 logo.png --out icons.iconset/icon_512x512.png
sips -z 1024 1024 logo.png --out icons.iconset/icon_512x512@2x.png
iconutil -c icns icons.iconset -o icon.icns
appdmg <config-json-path> <output-dmg-path-with-file-name>
如果安裝了nvm管理 node版本,需要增加npx
npx appdmg ./installers/dmg_creator/config.json ./installers/dmg_creator/mxlogger_analyzer.app

打開(kāi) 磁盤(pán)工具.app
菜單欄中:文件 - 新建映像 - 空白映像
在出來(lái)的對(duì)話框中按您的需求修改橙色框圈起來(lái)的地方,其中空間大小設(shè)置略大于app即可

點(diǎn)擊存儲(chǔ),桌面出現(xiàn)一個(gè).cdr文件和一個(gè)磁盤(pán)

右鍵打開(kāi)磁盤(pán),是空的

app 文件、桌面上的 icns 文件和背景圖全部拖進(jìn) 磁盤(pán)文件之中
添加applications鏈接
cd /Volumes/mxlogger
ln -s /Applications Applications

最后隱藏圖標(biāo)文件,這里我們沒(méi)有設(shè)置背景圖:
cd /Volumes/mxlogger
chflags hidden AppIcon.icns

導(dǎo)出dmg
最后一步轉(zhuǎn)換 dmg 文件,這一步主要起到的作用是壓縮文件,減小 dmg 文件的占用空間。
彈出掛載的映像目錄
打開(kāi) 磁盤(pán)工具.app
菜單欄 - 映像 - 轉(zhuǎn)換,在彈出的對(duì)話框中選擇剛剛創(chuàng)建的 dmg 文件:

https://wiki.deepcoin.pro/pages/viewpage.action?pageId=11436329