https://unsplash.com/photos/Gll-v69L8iA

ວີທີຕິດຕັ້ງ Flutter ຫຼາຍ Version ໃນເຄື່ອງດຽວ

Khatthaphone

--

ອັບເດດ: ຫຼັງຈາກທົດລອງໃຊ້ການໃຊ້ວິທີນີ້ສຳລັບລັອກໂປຣເຈັກໄວ້ບໍ່ໃຫ້ອັບເດດເທື່ອ ພົບວ່າເມື່ອຈະອັບເດດຈະຫຍຸ້ງຍາກຫຼາຍ ແລະ ໃຊ້ເວລາດົນ, ທາງທີ່ດີທີ່ໃຊ້ປັດຈຸບັນຄືຖ້າເປັນແອັບຯທີ່ພັດທະນາເລື້ອຍໆຄວນທະຍອຍອັບເດດເລື້ອຍໆເລີຍຈະດີກວ່າ ບໍ່ຄວນປ່ອຍຍາວໃຫ້ເປັນ Bottle Kneck ຍົກເວັ້ນສະເພາະແອັບທີ່ເປັນໂປຣເຈັກທີ່ອາດຈະມີກຳນົດປິດໄປດົນແລ້ວ ແຕ່ຕ້ອງໄດ້ກັບມາແກ້ ກໍ່ໃຊ້ວິທີນີ້ຊ່ວຍໄດ້.

ສຳລັບຫຼາຍໆຄົນທີ່ໃຊ້ Flutter ຈະເຫັນວ່າ ທາງທີມມີການທີ່ມີອັບເດດໃໝ່ໆມາເລື້ອຍໆຈົນບາງເທື່ອກໍ່ນຳບໍ່ທັນເນາະ ແລະ ຫຼ້າສຸດ ອັບເດດທີ່ໃຫຍ່ທີ່ສຸດຢ່າງໜຶ່ງຂອງ Flutter/Dart ເລີຍກະຄື Nulll-Safety, ຫຼື ອາດຈະເປັນອັບເດດເລັກໆນ້ອຍໆກໍ່ຕາມ ຫຼາຍເທື່ອທີ່ເຮົາອັບເດດໄປແລ້ວເຮັດໃຫ້ ເຮົາບໍ່ສາມາດໄປເປີດໂປຣເຈັກເກົ່າທີ່ໃຊ້ Flutter ເວີເຊິນເກົ່າໄດ້ ຕ້ອງໄດ້ອັບເດດ Package ທີ່ໃຊ້ໃຫ້ເຂົ້າກັນກ່ອນ ເຊິ່ງບາງເທື່ອກໍ່ພົບບັນຫາມີ Package ທີ່ນັກພັດທະນາບໍ່ທັນອັບເດດໃຫ້ເຂົ້າກັບເວີເຊິນໃໝ່ ຫຼື ຮ້າຍໄປກວ່ານັ້ນອາດຈະ Deprecate ຫຼື ຢຸດພັດທະນາແລ້ວ ແຕ່ຖ້າທີມເຮົາຍັງບໍ່ມີເວລາ ແລະ ກຳລັງພໍທີ່ຈະມາສຸມອັບເດດເທື່ອ ຕ້ອງການປະໃຫ້ເປັນເວິເຊິນເກົ່າກ່ອນ ຈະມີວິທີຈັດການແນວໃດ ເຮົາມາເບິ່ງນຳກັນ

ວິທີຮັບມືແບບປະຖົມປະຖານ ທີ່ຜູ້ຂຽນເຄີຍໃຊ້ແມ່ນລົງ Flutter ເປັນ 2 ເວີເຊິນ ແລ້ວກຳນົດຢູ່ path ໃຫ້ແຍກກັນ ເຊັ່ນຄຳສັ່ງ flutter ແມ່ນໃຊ້ເປັນເວີເຊິນຫຼ້າສຸດ ແລະ ອີກໂຕແຍກເຊັ່ນ flutter1 ສຳລັບ flutter ເວີເຊິນເກົ່າ ແຕ່ໃຊ້ງານເໝາະກັບ Command Line ຫຼື Terminal ການໃຊ້ງານກັບ IDE ຫຼື Code Editor ອາດຈະໄດ້ປັບຕັ້ງຄ່າຕື່ມ

ເຊິ່ງຖ້າໃຜຂຽນ Javascript / NodeJS ຄືຈະຮູ້ຈັກໂຕເຄື່ອງມືຈັດການເວີເຊິນຂອງ NodeJS ແລະ npm ຄືໂຕ NVM (Node Version Manager) ຜູ້ຂຽນກໍ່ເລີຍຄິດຫຼິ້ນໆວ່າ Flutter ກໍ່ຄວນຈະມີ ເລີຍລອງຊອກເບິ່ງ ປາກົດວ່າມີອີ່ຫຼີ ຊື່ຄ້າຍໆກັນ Flutter Version Management

ໂດຍໂຕ FVM ນີ້ ແນ່ນອນວ່າໃຊ້ງານງ່າຍ ແລະ ສະດວກກວ່າເຮົາຕິດຕັ້ງໃຫ້ຄອມມີ Flutter ຫຼາຍເວີເຊິນເອງແນ່ນອນ ນອກຈາກທີ່ເຮົາສາມາດສະລັບໄປມາວ່າຈະໃຊ້ເວິເຊິນໃດໄດ້ແລ້ວ ອີກ Function ທີ່ສະດວກສຸດໆຄື ເຮົາສາມາດກຳນົດໂປຣເຈັກນັ້ນໆໃຫ້ໃຊ້ Flutter ເວິເຊິນທີ່ກຳນົດໄວ້ເລີຍ ເຮັດໃຫ້ເວລາເປີດໂປຣເຈັກກໍ່ເຮັດວຽກໄດ້ປົກກະຕິເລີຍບໍ່ຕ້ອງສະລັບເວີເຊິນທຸກເທື່ອ ແລະ ເວລາ run, build ກໍ່ບໍ່ຕ້ອງເອີ້ນເປັນ flutter1, flutter2 ແຍກອີກ ກັນຫຼົງໄປໄດ້ຕື່ມ

ເຊິ່ງຂັ້ນຕອນການຕິດຕັ້ງກໍ່ບໍ່ຍາກ ເຂົ້າໄປ ເຮັດຕາມນີ້ໄດ້ເລີຍ https://fvm.app/docs/getting_started/installation

ແຕ່ບອກໄວ້ກ່ອນ ສຳລັບຄອມທີ່ຍັງບໍ່ມີ flutter ກ່ອນຈະຕິດຕັ້ງ fvm ແມ່ນໃຫ້ຜູ້ອ່ານຕ້ອງຕິດຕັ້ງ flutter ຕາມຂັ້ນຕອນປົກກະຕິກ່ອນເດີ້ ບໍ່ສາມາລົງ Dart SDK ແລ້ວຂ້າມມາລົງ fvm ເລີຍໄດ້ ເພາະ flutter ທີ່ມາກັບ fvm ບໍ່ສາມາດໃຊ້ຄຳສັ່ງ flutter doctor — android-license ກົດຮັບ License ຂອງ Android SDK ໄດ້
ຜູ້ຂຽນຂໍຂ້າມສ່ວນການໍຕິດຕັ້ງ ໄປຫາສ່ວນຂອງ Tip ແລະ Technique ການໃຊ້ FVM ຕໍ່ດີກວ່າເນາະ

ຫຼັງຈາກຕິດຕັ້ງແລ້ວ ເຮົາຈະຕ້ອງເອີ້ນໃຊ້ flutter ດ້ວຍຄຳສັ່ງ fvm flutter ແທນ ແຕ່ຜູ້ຂຽນຢາກໃຊ້ສະດວກກວ່ານີ້ ກໍ່ເລີຍຕັ້ງ alias ໃຫ້ ສາມາດເອີ້ນ ເປັນ flutter ລ້າໆໄດ້ເລີຍ ໃນ Mac ແມ່ນໃຫ້ແກ້ໄຟລ໌ ~/.zshrc ເພີ່ມ alias ແລະ ກໍ່ຢ່າລືມລຶບ path ທີ່ຊີ້ໄປຫາ flutter sdk ໂຕເກົ່ານຳ

ຈາກນັ້ນກໍ່ຣັນຄຳສັ່ງ source ~/.zshrc ເທົ່ານີ້ເຮົາກໍ່ສາມາດ run ຄຳສັ່ງ flutter ແທນ fvm flutter ໄດ້ແລ້ວ

ການຕິດຕັ້ງ Flutter ເວີເຊິນໃດໜຶ່ງແມ່ນໃຊ້ຄຳສັ່ງ fvm install ຕາມດ້ວຍ ເລກເວີເຊິນ ຫຼື Channel ເຊັ່ນ stable

ຖ້າຢາກໃຊ້ເວີເຊິນໃດເປັນໂຕ Default ແມ່ນໃຊ້ຄຳສັ່ງ fvm global ຕາມດ້ວຍເວີເຊິນ

ຖ້າຕ້ອງການໃຫ້ໂປຣເຈັກໃດໜຶ່ງໃຊ້ ເວີເຊິນ ໃດກໍ່ພຽງຣັນຄຳສັ່ງ flutter use ຢູ່ໂປຣເຈັກນັ້ນໆ

ຈາກນັ້ນ ຈະເຫັນວ່າ FVM ຈະສ້າງ folder ໜຶ່ງທີ່ຊື່ວ່າ .fvm, ໃນນັ້ນຈະມີໄຟລ໌ fvm_config.json ສຳລັບກຳນົດວ່າໂປຣເຈັກນີ້ໃຊ້ Flutter ເວີເຊິນໃດ ແລະ folder ຊື່ flutter_sdk ເຊິ່ງຈິງ link ໄປຫາໂຕກາງທີ່ລວມ Flutter ແຕ່ລະເວີເຊິນທີ່ຕິດຕັ້ງຜ່ານ FVM ໄວ້ ຢູ່ $HOME/fvm/versions

ພຽງເທົ່ານີ້ເວລາເຮົາ ໃຊ້ຄຳສັ່ງ flutter (ຫຼືຖ້າຈະໃຫ້ຖືກແມ່ນ fvm flutter) ຢູ່ໃນ folder ໃດ ມັນກໍ່ຈະກວດຫາ config ແລ້ວໃຊ້ Flutter ເວີເຊິນທີ່ກຳນົດກັບໂປຣເຈັກນັ້ນໆໄດ້ເລີຍ ຕົວຢ່າງ: ຖ້າເອີ້ນຄຳສັ່ງ flutter ຢູ່ folder ນອກທົ່ວໄປກໍ່ຈະເປັນ version ທີ່ກຳນົດຢູ່ Global ຫຼື default version ແຕ່ຖ້າເຂົ້າໄປໃນ folder ຂອງໂປຣເຈັກທີ່ກຳນົດ ກໍ່ຈະກາຍເປັນ Flutter ເວິເຊິນນັ້ນໆທັນທີ

ຄຳສັ່ງ flutter ຢູ່ນອກໂປຣເຈັກເປັນເວີເຊິນ 2.2.3
ຄຳສັ່ງ flutter ຢູ່ນອກໂປຣເຈັກທີ່ກຳນົດເວີເຊິນດ້ວຍ fvm ເປັນເວີເຊິນ 2.0.6

ແຕ່ສິ່ງສຳຄັນຢ່າງໜຶ່ງທີ່ຕ້ອງເຮັດຄືເຮົາຕ້ອງ ເພີ່ມ .fvm/flutter_sdk ໃສ່ໃນ .gitignore ກ່ອນເນາະ ຄືຊິບໍ່ມີໃຜຢາກຜູກ ແລ້ວ push ໂຕ flutter sdk ຂຶ້ນໄປນຳ git repo ຂອງໂຕເອງແນ່ນອນ, ມີແຕ່ໃຫ້ເພີ່ມ flutter_sdk ເຂົ້າໄປ ສ່ວນ fvm_config.json ແມ່ນເຮົາຈຳຈົ່ງໄວ້ໃຫ້ຄົນອື່ນທີ່ດຶງ repo ເຮົາມາຈຳສາມາດໃຊ້ Flutter ໃຫ້ຖືກເວິເຊິນໄດ້ເລີຍໂດຍບໍ່ຕ້ອງເດົາ

ຫຼັງຈາກນັ້ນ ຄົນທີ່ດຶງ repo ເຮົາໄປຈະຍັງມີ .fvm/fvm_config.json ກຳນົດເວິເຊິນມາຢູ່ ແຕ່ບໍ່ມີ .fvm/flutter_sdk ພຽງແຕ່ run ຄຳສັ່ງ fvm install ໂຕ fvm ກໍ່ຈະຈັດການຕິດຕັ້ງ Flutter ເວີເຊິນທີ່ກຳນົດ ແລ້ວຜູກເຂົ້າມາໃສ່ .fvm/flutter_sdk ອັດຕະໂນມັດ

ການຕັ້ງຄ່າສຳລັບ IDE / Text Editor

ຈາກຂັ້ນຕອນຂ້າງເທິງຖືວ່າເຮົາສາມາດໃຊ້ຄຳສັ່ງໃນ Terminal / Command line ໃຫ້ເອີ້ນໃຊ້ Flutter ໃຫ້ຖືກແລ້ວ ແຕ່ເພື່ອຄວາມສະດວກຍິ່ງຂຶ້ນ ເຮົາກໍ່ຄວນຈະຕັ້ງໃຫ້ IDE ໄດ້ຮູ້ນຳວ່າໂປຣເຈັກນັ້ນໆໃຊ້ Flutter ເວີເຊິນໃດ ເພື່ອສາມາດສັ່ງ run ແອັບຯຈາກ IDE ໄດ້ແບບບໍ່ຕິດຂັດ

ສຳລັບ VS CODE:

ໃຫ້ສ້າງໄຟລ໌ settings.json ໃນໂຟເດີ້ .vscode ຫຼື ຖ້າມີຢູ່ແລ້ວກໍ່ໃຫ້ຂຽນຕື່ມ

ເທົ່ານີ້ກໍ່ສາມາດ run ແອັບຯໄດ້ຕາມປົກກະຕິແລ້ວ 🎉

ສຳລັບ Android Studio:

ໃຫ້ເຂົ້າໄປທີ່ Preferences

ຈາກນັ້ນເຂົ້າໄປ Languages & Frameworks ແລະ ປ່ຽນ Flutter SDK path ໃຫ້ເຂົ້າໄປເລືອກເປັນໂຟເດີ້ .fvm/flutter_sdk ຢູ່ໃນໂປຣເຈັກເຮົາໄດ້ເລີຍ ແລ້ວຫຼັງຈາກນັ້ນໂປຣເຈັກມັນຈະຊີ້ໄປຫາບ່ອນໂຟເດີ້ sdk ທີ່ກຳນົດໄວ້ເລີຍ

ພຽງເທົ່ານີ້ເຮົາກໍ່ສາມາດເຮັດວຽກໂດຍໄດ້ທັງໂປຣເຈັກທີ່ໃຊ້ Flutter ເວິເຊິນໃໝ່ ແລະ ເວິເຊິນເກົ່າໃນເຄື່ອງໆດຽວ ແລະ ທີ່ສຳຄັນຄືສະດວກບໍ່ຕ້ອງຈື່ຄຳສັ່ງທີ່ຕ້ອງໃຊ້ ແລະ ບໍ່ຕ້ອງສະລັບໄປສະລັບມາ ຖ້າເຮົາຢູ່ໂປຣເຈັກທີ່ກຳນົດໄວ້ເປັນເວິເຊິນໃດ ທັງ Command line ແລະ IDE ກໍ່ຈະໃຊ້ Flutter ເວິເຊິນນັ້ນໆໃຫ້ອັດຕະໂນມັດ

Happy coding 😁

https://www.buymeacoffee.com/khatthaphoe

--

--