وضع تطبيق سطح المكتب رفرفة معًا

صورة

مرحبا بالجميع!


اليوم سأوضح لك كيفية تشغيل تطبيق سطح المكتب Flutter الموجود لديك (MacOS أو Linux أو Windows).


أولاً ، يجب عليك تبديل قناة Flutter من الإصدار إلى الرئيسي. للقيام بذلك ، تحتاج إلى تشغيل الأوامر التالية في سطر الأوامر:


flutter channel master flutter upgrade 

ثم تحتاج إلى تعيين متغير البيئة ENABLE_FLUTTER_DESKTOP إلى صواب .


للقيام بذلك ، قم بما يلي في سطر الأوامر:


نظام التشغيل Mac OS و Linux


 export ENABLE_FLUTTER_DESKTOP=true 

نوافذ بوويرشيل


 $env:ENABLE_FLUTTER_DESKTOP="true" 

ويندوز CMD


 set ENABLE_FLUTTER_DESKTOP=true 

بعد ذلك ، سترى سطح مكتبك في قائمة الأجهزة المتاحة لتشغيل Flutter. للتحقق من ذلك ، قم بتشغيل أمر أجهزة الرفرفة


صورة


كما ترون في لقطة الشاشة ، ظهر Mac OS في قائمة الأجهزة المتاحة.


بعد ذلك ، نحتاج إلى النظر في المستودع التالي:
https://github.com/google/flutter-desktop-embedding


نحن مهتمون بمحتويات دليل المثال ، أي مجلدات macos و linux و windows . هذه هي العدائين للمنصات المعنية - التطبيقات الأصلية التي تعمل داخلها رفرفة. تمامًا كما ترى في دليل مشروعك عند إنشاء مشروع باستخدام أمر إنشاء الرفرفة .


ما عليك سوى نسخ عداء النظام الأساسي الذي تهتم به إلى دليل المشروع. هذه الخطوة ضرورية لأن إنشاء الرفرفة لا يدعم الإنشاء التلقائي للعدائين لسطح المكتب.


بالفعل انتهى تقريبا. أنت الآن بحاجة إلى تعديل main.dart الخاص بك قليلاً


أضف الواردات التالية:


 import 'dart:io' show Platform; import 'package:flutter/foundation.dart' show debugDefaultTargetPlatformOverride; 

تغيير الرئيسي () على النحو التالي:


 void main() { debugDefaultTargetPlatformOverride = TargetPlatform.fuchsia; [...] } 

الخطوة الاخيرة قم بتشغيل الأوامر التالية:


 flutter packages get flutter precache --linux 

القيام به! الآن فقط قم بتشغيل الرفرفة وسيتم بناء التطبيق الخاص بك على سطح المكتب!


ملاحظة مهمة:


يجب ألا يغيب عن البال أن العديد من المكونات الإضافية التي استخدمتها في تطبيقات Flutter لن تعمل على سطح المكتب ، لأنها تعتمد على واجهات برمجة التطبيقات الأصلية. في المستقبل ، سيتغير الموقف ، لكن من الأفضل حتى الآن عدم استخدام هذه الطريقة لشيء خطير.

Source: https://habr.com/ru/post/ar453092/


All Articles