Google Flutter

Flutter: วิธีแก้ปัญหา Kotlin Gradle Plugin ในการใช้งาน Firebase

เรื่องที่เกี่ยวข้อง - Firebase, Google Flutter, Kotlin

อันนี้เพิ่งเจอสดๆ ร้อนๆ เลยขอมาเขียนไว้ที่นี่ จนกว่าตัวโปรเจค template ของ Flutter จะมีการอัพเดตครับ

รายละเอียดมีดังนี้

  • Flutter version 2.8.1
  • firebase_core 1.11.0

คือถ้าเราทำการเอา Flutter Plugin ของ Firebase (FlutterFire) มาใช้งานในโปรเจค และรันกับ Android จะเจอ Error เป็นชุดคล้ายๆ ด้านล่าง

arning: Mapping new ns http://schemas.android.com/sdk/android/repo/sys-img2/02 to old ns http://schemas.android.com/sdk/android/repo/sys-img2/01
e: /Users/teerasejjiraphatchandej/.gradle/caches/transforms-2/files-2.1/404e9bdce1e5f16c1ef516bb674036df/jetified-firebase-analytics-ktx-20.0.2-api.jar!/META-INF/java.com.google.android.libraries.firebase.firebase_analytics_ktx_granule.kotlin_module: Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.5.1, expected version is 1.1.15.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileDebugKotlin'.
> Compilation error. See log for more details

* 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 16s
[!] Your project requires a newer version of the Kotlin Gradle plugin.
    Find the latest version on https://kotlinlang.org/docs/gradle.html#plugin-and-versions, then update /Users/teerasejjiraphatchandej/Desktop/Temp/Flutter-my-project/nextflow_firebase_realtime_db_chat/android/build.gradle:
    ext.kotlin_version = '<latest-version>'
Exception: Gradle task assembleDebug failed with exit code 1

เอ้าประมาณด้านบนนี้แหละ แล้วจะแก้ error ยังไงดูด้านล่างเลย

  1. สังเกตดีๆ ว่าตัวที่ Error จะมีคำแนะนำอยู่แล้วครับว่าโปรเจคเราต้องการ Kotlin Gradle Plugin ตัวใหม่กว่าปัจจุบัน ซึ่งเราสามารถไปดูเวอร์ชั่นได้ที่เว็บไซต์ของ Kotlin
  2. จากนั้นภายในโปรเจคของเราให้เปิดโฟลเดอร์ android > build.gradle จากนั้นให้ทำการมองหาบรรทัดที่เขียนว่า ext.kotlin_version แบบภาพด้านล่าง แล้วทำการเอาเวอร์ชั่นจากในเว็บ Kotlin มาใส่แทน
buildscript {
    ext.kotlin_version = '1.5.1' // แก้ตรงนี้ให้เป็นเวอร์ชั่นที่เอามาจากเว็บไซต์ของ ​Kotlin
    ...
}

เสร็จบันทึกไฟล์ และทำการ build แอพ Android ใหม่ก็น่าจะแก้ไขได้แล้วครับ

เริ่มต้นยุค AI ด้วยคอร์สฟรี และพรีเมี่ยม กับพล

หากชอบสิ่งที่พลเล่า เรื่องที่พลสอน สามารถสนับสนุนพลโดยการเข้าเรียนคอร์สออนไลน์ของพลนะคร้าบ

  • เข้าใจง่าย ใช้ได้จริง ออกแบบการสอนอย่างเข้าใจโดยโค้ชพล
  • มีคอร์สสำหรับคนใช้งานทั่วไป จนถึงเรียนรู้เพื่อใช้งานในสายอาชีพขั้นสูง
  • ทุกคอร์สมีใบประกาศณียบัตรรับรองหลังเรียนจบ

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • Always Active

Save