اذهب إلى المحتوى
  • 0

مشكلة لدى عمل build APK

Flutter Dev

السؤال

السلام عليكم ورحمة الله وبركاته 

تحيه طيبه للجميع 

يا اخوان انا احاول اعمل مشروعي من نوع فلاتر نسخة APK ولكن كل ما احاول اعمل BUILD تجيني المشكله التاليه :

C:\src\flutter\bin\flutter.bat --no-color build apk
You are building a fat APK that includes binaries for android-arm, android-arm64, android-x64.
If you are deploying the app to the Play Store, it's recommended to use app bundles or split the APK to reduce the APK size.
    To generate an app bundle, run:
        flutter build appbundle --target-platform android-arm,android-arm64,android-x64
        Learn more on: https://developer.android.com/guide/app-bundle
    To split the APKs per ABI, run:
        flutter build apk --target-platform android-arm,android-arm64,android-x64 --split-per-abi
        Learn more on:  https://developer.android.com/studio/build/configure-apk-splits#configure-abi-split
Running Gradle task 'assembleRelease'...                        
Plugin project :firebase_core_web not found. Please update settings.gradle.




Note: C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.12.11\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: C:\src\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.12.11\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

Removed unused resources: Binary resource data reduced from 235KB to 212KB: Removed 9%



















FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':path_provider:verifyReleaseResources'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > Android resource linking failed
     C:\Users\*****\.gradle\caches\transforms-2\files-2.1\733257008ca62c5b6ddfd0e885c42d88\core-1.1.0\res\values\values.xml:142:5-173:25: AAPT: error: resource android:attr/fontVariationSettings not found.

     C:\Users\*****\.gradle\caches\transforms-2\files-2.1\733257008ca62c5b6ddfd0e885c42d88\core-1.1.0\res\values\values.xml:142:5-173:25: AAPT: error: resource android:attr/ttcIndex not found.


* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1m 19s
Running Gradle task 'assembleRelease'...                           80.8s
The built failed likely due to AndroidX incompatibilities in a plugin. The tool is about to try using Jetfier to solve the incompatibility.
Building plugin cloud_firestore...
Running Gradle task 'assembleAarRelease'...                     
The plugin cloud_firestore could not be built due to the issue above.
Process finished with exit code 1

 

 

في احد يعرف سبب المشكله هذا او كيف يمكن حلها؟

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

حاول إنشاء تطبيقك لمنصة واحدة محددة فقط. Fat APK يعني أن تطبيقك يتم إنشاؤه للعديد من الأنظمة الأساسية. جرب بناؤه مرة واحدة ولكن لمنصة محددة فقط وكما يقترح عليك ضمن رسالة الخطأ يمكنك تجربة إحدى الأوامر:

flutter build appbundle --target-platform android-arm,android-arm64,android-x64

حيث تقوم بتحديد المنصة التي تريد البناء عليها. مثلاً android-x64
يمكنك أيضاً أن تقوم ببناء التطبيق مباشرةً من Android Studio أو Xcode وبذلك سيتم بناؤه لمنصة واحدة.
وأيضاً لاحظت وجود خطأ آخر وهو:

Plugin project :firebase_core_web not found. Please update settings.gradle.

ولمعالجة هذه المشكلة يجب أن تقوم بتحديث ملف android/app/build.gradle  كالتالي:

من:

android {
    // ...
    defaultConfig {
        // ...
        minSdkVersion 16
    }
}

إلى:

android {
    // ...
    defaultConfig {
        // ...
        minSdkVersion 23
    }
}

لأنه عند استخدام flutter يجب أن تكون قيمة minSdkVersion 23

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

عليك فتح المشروع باستخدام أندرويد استديو (في حال لا تستخدمه أقترح تحميله لهذه الجزئية التالية)، حيث سيقوم بالبحث عن تحديثات للتضمينات من Gradle وغيرها، عليك فقط تصفح الملفات في مشروع أندرويد وهو سيقوم على اقتراح التحديثات.

تحميل أحدث إصدار من Flutter و أحدث android sdk ووضع الإصدارالخاص به في المشروع، حل الخطأ الأول لديك هو 

جعل compileSdkVersion 28 و compileSdkVersion ..مثلا. لكن قم باستخدام الأحدث.

يمكنك بناء مشروع فلاتر جديد بعد التعديلات السابقة، ثم تضمين ملفات إعدادت البيئة منه والتي ستكون في جزء مشروع أندرويد بالشكل التالي في settings.gradle:

ربما يوجد سطر ناقص لديك.

include ':app'

def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()

def plugins = new Properties()
def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
if (pluginsFile.exists()) {
    pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }
}

plugins.each { name, path ->
    def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
    include ":$name"
    project(":$name").projectDir = pluginDirectory
}

في ملف gradle.properties أضف:

android.useAndroidX=true
android.enableJetifier=true

أعتقد أن أغلب المشاكل بسبب تضارب إصدار المكتبات (مكتبات فلاتر حديثة أما أندرويد قديمة) فاعمل التعديل على نسخة منفصلة من المشروع في حال حدوث مشاكل غير الحالية (للحفاظ على نسخة من المشروع)

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

ممكن يكون عدة أسباب لذلك, قد تكون مش مفعل multiDexEnabled true

defaultConfig {
    multiDexEnabled true
}

في المسار التالي أو ناسي وضعها android > app > build.gradle, ومن ثم في defaultConfig بدك ترقي gradle في ملف android/build.gradle 

classpath 'com.android.tools.build:gradle:3.3.1'

طبعا مع تغيير 3.3.1 إلى أخر أصدار gradle, ومن ثم في المسار التالي 

android/app/gradle.properties ستضع التالي 

android.useAndroidX=true
android.enableJetifier=true

و من ثم تشغيل الأمر التالي 

flutter clean

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 21 ساعات قال Sam Ahw:

حاول إنشاء تطبيقك لمنصة واحدة محددة فقط. Fat APK يعني أن تطبيقك يتم إنشاؤه للعديد من الأنظمة الأساسية. جرب بناؤه مرة واحدة ولكن لمنصة محددة فقط وكما يقترح عليك ضمن رسالة الخطأ يمكنك تجربة إحدى الأوامر:


flutter build appbundle --target-platform android-arm,android-arm64,android-x64

حيث تقوم بتحديد المنصة التي تريد البناء عليها. مثلاً android-x64
يمكنك أيضاً أن تقوم ببناء التطبيق مباشرةً من Android Studio أو Xcode وبذلك سيتم بناؤه لمنصة واحدة.
وأيضاً لاحظت وجود خطأ آخر وهو:


Plugin project :firebase_core_web not found. Please update settings.gradle.

ولمعالجة هذه المشكلة يجب أن تقوم بتحديث ملف android/app/build.gradle  كالتالي:


من:

android {
    // ...
    defaultConfig {
        // ...
        minSdkVersion 16
    }
}

إلى:

android {
    // ...
    defaultConfig {
        // ...
        minSdkVersion 23
    }
}

لأنه عند استخدام flutter يجب أن تكون قيمة minSdkVersion 23

مرحبا اخي

انا اعمل من الاندرويد ستوديو نعم

واحاول اعمل apk من الاندرويد ستوديو

بنسبة الى موضوع minSdkVersion انا عامله 23 من قبل ولكن المشكلة مستمرة

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 8 دقائق مضت قال مروان مروان3:

مرحبا اخي

انا اعمل من الاندرويد ستوديو نعم

واحاول اعمل apk من الاندرويد ستوديو

بنسبة الى موضوع minSdkVersion انا عامله 23 من قبل ولكن المشكلة مستمرة

 

أخي يمكن للحل المرفق مسبقاً إعلاه أن يفيدك لقد واجهني خطأ مثل هذا قبل ذلك وقمت بحله بنفس طريقة الجواب الذي أرفقته لك 

هل ممكن أن تقوم بتجربة ذلك واخباري بالنتيجة.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 9 ساعات قال بلال زيادة:

ممكن يكون عدة أسباب لذلك, قد تكون مش مفعل multiDexEnabled true


defaultConfig {
    multiDexEnabled true
}

في المسار التالي أو ناسي وضعها android > app > build.gradle, ومن ثم في defaultConfig بدك ترقي gradle في ملف android/build.gradle 


classpath 'com.android.tools.build:gradle:3.3.1'

طبعا مع تغيير 3.3.1 إلى أخر أصدار gradle, ومن ثم في المسار التالي 

android/app/gradle.properties ستضع التالي 


android.useAndroidX=true
android.enableJetifier=true

و من ثم تشغيل الأمر التالي 


flutter clean

 

 

مرحبا اخي

بنسبة الى multiDexEnabled  انا عامله 

ايضا android.useAndroidX=true
android.enableJetifier=true انا عاملهم كمان

 

بنسبة الى اخل حل

انا لدي كالتالي

classpath 'com.android.tools.build:gradle:3.5.0'

يعني احدث من الي انت عامله ايضا ولكن المشكله مستمره

 

بتاريخ 21 ساعات قال Wael Aljamal:

عليك فتح المشروع باستخدام أندرويد استديو (في حال لا تستخدمه أقترح تحميله لهذه الجزئية التالية)، حيث سيقوم بالبحث عن تحديثات للتضمينات من Gradle وغيرها، عليك فقط تصفح الملفات في مشروع أندرويد وهو سيقوم على اقتراح التحديثات.

تحميل أحدث إصدار من Flutter و أحدث android sdk ووضع الإصدارالخاص به في المشروع، حل الخطأ الأول لديك هو 

جعل compileSdkVersion 28 و compileSdkVersion ..مثلا. لكن قم باستخدام الأحدث.

يمكنك بناء مشروع فلاتر جديد بعد التعديلات السابقة، ثم تضمين ملفات إعدادت البيئة منه والتي ستكون في جزء مشروع أندرويد بالشكل التالي في settings.gradle:

ربما يوجد سطر ناقص لديك.


include ':app'

def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()

def plugins = new Properties()
def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
if (pluginsFile.exists()) {
    pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }
}

plugins.each { name, path ->
    def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
    include ":$name"
    project(":$name").projectDir = pluginDirectory
}

في ملف gradle.properties أضف:


android.useAndroidX=true
android.enableJetifier=true

أعتقد أن أغلب المشاكل بسبب تضارب إصدار المكتبات (مكتبات فلاتر حديثة أما أندرويد قديمة) فاعمل التعديل على نسخة منفصلة من المشروع في حال حدوث مشاكل غير الحالية (للحفاظ على نسخة من المشروع)

اهلا اخي

كل شي جربته من هذا الخيارات ولكن بدون فائده اخوي

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 4 دقائق مضت قال مروان مروان3:

 

مرحبا اخي

بنسبة الى multiDexEnabled  انا عامله 

ايضا android.useAndroidX=true
android.enableJetifier=true انا عاملهم كمان

 

بنسبة الى اخل حل

انا لدي كالتالي

classpath 'com.android.tools.build:gradle:3.5.0'

يعني احدث من الي انت عامله ايضا ولكن المشكله مستمره

 

اهلا اخي

كل شي جربته من هذا الخيارات ولكن بدون فائده اخوي

هل موجود في ملف gradle.properties هذه الأوامر 

org.gradle.jvmargs=-Xmx1536M
android.useAndroidX=true
android.enableJetifier=true
android.enableR8=true

ممكن لقطة شاشة من ملف gradle.properties؟

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

أخي يبدو أن هناك أجزاء من gradle لم يتم تحميلها بشكل صحيح. لذلك 

هناك عدة حلول وهي 

  1. يمكن استدعاء هذه الحزمة مرة أخرى cloud_firestore و العمل على تثبيتها في مشروعك بشكل صحيح ممكن تقرأ أكثر عنها هنا , ومن ثم تشغيل الأمر flutter clean , و من ثم الأمر flutter run, ومن ثم الأمر flutter build apk.
  2. ممكن أن تقوم بصنع مشروع جديد و من ثم نقل الملفات إليه و المحاولة مرة أخرى. ومن ثم تشغيل الأمر flutter build apk. 
  3. التأكد من الحزم التي تم استخدامها في المشروع و التأكد من أنها ثبتت بشكل صحيح و هناك بعض الحزم مثل cloud_firestore تحتاج إلى إضافة بعض الأوامر إلى الملفات. 
  4. تشغيل الأمر flutter doctor وفحص النتيجة و العمل على حل جميع المشاكل.
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ منذ ساعة مضت قال بلال زيادة:

أخي يبدو أن هناك أجزاء من gradle لم يتم تحميلها بشكل صحيح. لذلك 

هناك عدة حلول وهي 

  1. يمكن استدعاء هذه الحزمة مرة أخرى cloud_firestore و العمل على تثبيتها في مشروعك بشكل صحيح ممكن تقرأ أكثر عنها هنا , ومن ثم تشغيل الأمر flutter clean , و من ثم الأمر flutter run, ومن ثم الأمر flutter build apk.
  2. ممكن أن تقوم بصنع مشروع جديد و من ثم نقل الملفات إليه و المحاولة مرة أخرى. ومن ثم تشغيل الأمر flutter build apk. 
  3. التأكد من الحزم التي تم استخدامها في المشروع و التأكد من أنها ثبتت بشكل صحيح و هناك بعض الحزم مثل cloud_firestore تحتاج إلى إضافة بعض الأوامر إلى الملفات. 
  4. تشغيل الأمر flutter doctor وفحص النتيجة و العمل على حل جميع المشاكل.

مرحبا اخي

وجدت الحل كالتالي للفائده حقيقه لا اعلم فائدته بضبط ولكن اعتقد انه يخفي الاخطاء

 

    lintOptions {
    
        checkReleaseBuilds false
    }

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...