ย้ายข้อมูลไปยัง Android Studio

การย้ายข้อมูลโปรเจ็กต์ไปยัง Android Studio ต้องมีการปรับโครงสร้างโปรเจ็กต์ ใหม่ ระบบบิลด์ และฟังก์ชันการทำงานของ IDE

หากคุณกำลังย้ายข้อมูลจาก IntelliJ และโปรเจ็กต์ใช้ Gradle อยู่แล้ว คุณจะเปิดโปรเจ็กต์ที่มีอยู่จาก Android Studio ได้ หากคุณใช้ IntelliJ แต่โปรเจ็กต์ยังไม่ได้ใช้ Gradle คุณจะต้อง เตรียมโปรเจ็กต์ด้วยตนเองก่อนจึงจะนำเข้าไปยัง Android Studio ได้ ดูข้อมูลเพิ่มเติมได้ที่ส่วนย้ายข้อมูลจาก IntelliJ

ข้อมูลพื้นฐานเกี่ยวกับ Android Studio

ความแตกต่างที่สำคัญบางประการที่ควรทราบขณะเตรียม ย้ายข้อมูลไปยัง Android Studio มีดังนี้

การจัดระเบียบโปรเจ็กต์และโมดูล

Android Studio สร้างขึ้นจาก IDE ของ IntelliJ IDEA หากต้องการทำความคุ้นเคย กับพื้นฐานของ IDE เช่น การนำทาง การเติมโค้ดอัตโนมัติ และแป้นพิมพ์ ลัด โปรดดูทำความรู้จัก Android Studio

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

ดูข้อมูลเพิ่มเติมเกี่ยวกับโปรเจ็กต์และโมดูล Android Studio ได้ที่ภาพรวมโปรเจ็กต์

ระบบบิลด์ที่ใช้ Gradle

ระบบบิลด์ของ Android Studio สร้างขึ้นจาก Gradle และใช้ไฟล์การกำหนดค่าบิลด์ ที่เขียนในสคริปต์ Groovy หรือ Kotlin เพื่อให้ขยายและ ปรับแต่งได้ง่าย

โปรเจ็กต์ที่ใช้ Gradle มีฟีเจอร์ที่สำคัญสำหรับการพัฒนา Android ซึ่งรวมถึงฟีเจอร์ต่อไปนี้

  • รองรับไลบรารีไบนารี (AAR) คุณไม่จำเป็นต้องคัดลอกแหล่งที่มาของไลบรารี ลงในโปรเจ็กต์ของคุณเองอีกต่อไป คุณสามารถประกาศการอ้างอิงและระบบจะดาวน์โหลดไลบรารี และผสานรวมเข้ากับโปรเจ็กต์ของคุณโดยอัตโนมัติ ซึ่งรวมถึงการผสานทรัพยากร รายการในไฟล์ Manifest กฎการยกเว้น Proguard กฎ Lint ที่กำหนดเอง และอื่นๆ โดยอัตโนมัติในเวลาบิลด์
  • รองรับตัวแปรบิลด์ ซึ่งช่วยให้คุณสร้างแอปเวอร์ชันต่างๆ (เช่น เวอร์ชันฟรี และเวอร์ชันโปร) จากโปรเจ็กต์เดียวกันได้
  • การกำหนดค่าและการปรับแต่งที่ง่ายดาย ตัวอย่างเช่น คุณสามารถดึงชื่อเวอร์ชันและรหัสเวอร์ชันจากแท็ก Git เป็นส่วนหนึ่งของบิลด์ได้
  • Gradle สามารถใช้จาก IDE, จากบรรทัดคำสั่ง และจากเซิร์ฟเวอร์การผสานรวมอย่างต่อเนื่อง เช่น Jenkins ซึ่งให้การสร้างเดียวกันทุกที่ทุกเวลา

ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้และการกำหนดค่า Gradle ได้ที่ กำหนดค่าบิลด์

การขึ้นต่อกัน

ทรัพยากร Dependency ของไลบรารีใน Android Studio ใช้การประกาศทรัพยากร Dependency ของ Gradle และ ทรัพยากร Dependency ของ Maven สำหรับไลบรารีต้นฉบับและไบนารีในเครื่องที่รู้จักกันดีซึ่งมีพิกัด Maven ดูข้อมูลเพิ่มเติมได้ที่ ประกาศการอ้างอิง

ย้ายข้อมูลจาก IntelliJ

หากโปรเจ็กต์ IntelliJ ใช้ระบบบิลด์ Gradle คุณจะ นำเข้าโปรเจ็กต์ไปยัง Android Studio ได้โดยตรง หากโปรเจ็กต์ IntelliJ ใช้ Maven หรือระบบบิลด์อื่น คุณจะต้องตั้งค่าให้ทำงานร่วมกับ Gradle ก่อนจึงจะย้ายข้อมูลไปยัง Android Studio ได้

นำเข้าโปรเจ็กต์ IntelliJ ที่ใช้ Gradle

หากใช้ Gradle กับโปรเจ็กต์ IntelliJ อยู่แล้ว ให้เปิดใน Android Studio โดยทำตามขั้นตอนต่อไปนี้

  1. คลิก File > New > Import Project
  2. เลือกไดเรกทอรีโปรเจ็กต์ IntelliJ แล้วคลิก OK โปรเจ็กต์จะเปิดขึ้น ใน Android Studio

นำเข้าโปรเจ็กต์ IntelliJ ที่ไม่ใช่ Gradle

หากโปรเจ็กต์ IntelliJ ยังไม่ได้ใช้ระบบบิลด์ Gradle คุณจะมีตัวเลือก 2 อย่างในการนำเข้าโปรเจ็กต์ไปยัง Android Studio ซึ่งอธิบายไว้ในส่วนต่อไปนี้

ย้ายข้อมูลโดยสร้างโปรเจ็กต์ใหม่ที่ว่างเปล่า

หากต้องการย้ายข้อมูลโปรเจ็กต์ไปยัง Android Studio โดยการสร้างโปรเจ็กต์ใหม่ที่ว่างเปล่าและ คัดลอกไฟล์ต้นฉบับไปยังไดเรกทอรีใหม่ ให้ทำดังนี้

  1. เปิด Android Studio แล้วคลิก File > New > New Project
  2. ป้อนชื่อโปรเจ็กต์แอปและระบุตำแหน่งที่จะสร้างโปรเจ็กต์ แล้วคลิกถัดไป
  3. เลือกรูปแบบของอุปกรณ์ที่แอปทำงาน แล้วคลิกถัดไป
  4. คลิกเพิ่มไม่มีกิจกรรม แล้วคลิกเสร็จสิ้น
  5. ในหน้าต่างเครื่องมือโปรเจ็กต์ ให้คลิกลูกศรเพื่อเปิดเมนูมุมมอง แล้วเลือกมุมมองโปรเจ็กต์เพื่อดูและสำรวจ การจัดระเบียบโปรเจ็กต์ Android Studio ใหม่ ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนมุมมองและวิธีที่ Android Studio จัดโครงสร้างโปรเจ็กต์ได้ที่ไฟล์โปรเจ็กต์
  6. ไปที่ตำแหน่งที่คุณเลือกสำหรับโปรเจ็กต์ใหม่ แล้วย้ายโค้ด การทดสอบหน่วย การทดสอบเครื่องมือ และทรัพยากรจากไดเรกทอรีโปรเจ็กต์เก่าไปยังตำแหน่งที่ถูกต้องในโครงสร้างโปรเจ็กต์ใหม่
  7. ใน Android Studio ให้คลิกไฟล์ > โครงสร้างโปรเจ็กต์เพื่อเปิดกล่องโต้ตอบ โครงสร้างโปรเจ็กต์ ตรวจสอบว่าได้เลือกโมดูลของแอปใน บานหน้าต่างด้านซ้าย
  8. ทำการแก้ไขที่จำเป็นในแท็บพร็อพเพอร์ตี้สำหรับโปรเจ็กต์ (เช่น การแก้ไข minSdk หรือ targetSdk)
  9. คลิก Dependencies แล้วเพิ่มไลบรารีที่โปรเจ็กต์ของคุณต้องพึ่งพา เป็น Gradle Dependencies หากต้องการเพิ่มการอ้างอิงใหม่ ให้คลิกเพิ่ม จากนั้น เลือกประเภทการอ้างอิงที่ต้องการเพิ่ม แล้วทำตามข้อความแจ้ง
  10. คลิก OK เพื่อบันทึกการแก้ไข
  11. คลิกสร้าง > สร้างโปรเจ็กต์เพื่อทดสอบการสร้างโปรเจ็กต์ และ หากจำเป็น ให้แก้ไขข้อผิดพลาดที่ยังค้างอยู่

ย้ายข้อมูลโดยสร้างไฟล์บิลด์ Gradle ที่กำหนดเอง

หากต้องการย้ายข้อมูลโปรเจ็กต์ไปยัง Android Studio โดยการสร้างไฟล์บิลด์ Gradle ใหม่ เพื่อชี้ไปยังไฟล์แหล่งที่มาที่มีอยู่ ให้ทำดังนี้

  1. ก่อนเริ่มต้น ให้สำรองไฟล์โปรเจ็กต์ไว้ในตำแหน่งอื่น เนื่องจากกระบวนการย้ายข้อมูลจะแก้ไขเนื้อหาของโปรเจ็กต์ในตำแหน่งนั้น
  2. สร้างไฟล์ในไดเรกทอรีโปรเจ็กต์ชื่อ build.gradle หากใช้ Groovy หรือ build.gradle.kts หากใช้สคริปต์ Kotlin ไฟล์นี้ มีข้อมูลทั้งหมดที่จำเป็นสำหรับ Gradle เพื่อเรียกใช้บิลด์

    โดยค่าเริ่มต้น Android Studio คาดหวังให้คุณจัดระเบียบโปรเจ็กต์ตามที่แสดงในรูปที่ 1

    รูปที่ 1 โครงสร้างโปรเจ็กต์เริ่มต้นสำหรับโมดูลแอป Android

    ใน settings.gradle สำหรับ Groovy หรือ settings.gradle.kts สำหรับสคริปต์ Kotlin คุณตั้งค่าที่เก็บ ที่ใช้เพื่อค้นหาปลั๊กอินและทรัพยากร Dependency ในบล็อก pluginManagement และ dependencyResolutionManagement ตามลำดับได้ดังนี้

    Groovy

      pluginManagement {
          repositories {
              google()
              mavenCentral()
              gradlePluginPortal()
          }
      }
      dependencyResolutionManagement {
          repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
          repositories {
              google()
              mavenCentral()
          }
      }
      rootProject.name = "Test App"
      include ':app'
      

    Kotlin

      pluginManagement {
          repositories {
              google()
              mavenCentral()
              gradlePluginPortal()
          }
      }
      dependencyResolutionManagement {
          repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
          repositories {
              google()
              mavenCentral()
          }
      }
      rootProject.name = "Test App"
      include(":app")
      

    คำเตือน: ที่เก็บ JCenter เปลี่ยนเป็นแบบอ่านอย่างเดียวเมื่อวันที่ 31 มีนาคม 2021 ดูข้อมูลเพิ่มเติมได้ที่ การอัปเดตบริการ JCenter

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

    ดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าและปรับแต่งไฟล์บิลด์ Gradle ได้ที่หัวข้อ กำหนดค่าบิลด์

  3. จากนั้นให้ระบุโปรเจ็กต์ไลบรารีที่คุณใช้

    เมื่อใช้ Gradle คุณไม่จำเป็นต้องเพิ่มไลบรารีเหล่านี้เป็นโปรเจ็กต์ซอร์สโค้ดอีกต่อไป คุณสามารถอ้างอิงถึงไฟล์เหล่านั้นในdependencies{}บล็อกของไฟล์บิลด์แทน จากนั้นระบบบิลด์จะจัดการไลบรารีเหล่านี้ให้คุณ ซึ่งรวมถึงการดาวน์โหลด ไลบรารี การผสานรวมทรัพยากร และการผสานรวมรายการในไฟล์ Manifest ตัวอย่างต่อไปนี้ จะเพิ่มคำสั่งประกาศสำหรับไลบรารี AndroidX จำนวนหนึ่งลงในบล็อก dependencies{} ของไฟล์บิลด์

    Groovy

    ...
    dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
    
        // AndroidX libraries
        implementation 'androidx.core:core-ktx:1.16.0'
        implementation 'androidx.appcompat:appcompat:1.7.1'
        implementation 'androidx.cardview:cardview:1.0.0'
        implementation 'com.google.android.material:material:1.7.0'
        implementation 'androidx.gridlayout:gridlayout:1.1.0'
        implementation 'androidx.leanback:leanback:'
        implementation 'androidx.mediarouter:mediarouter:1.8.1'
        implementation 'androidx.palette:palette-ktx:1.0.0'
        implementation 'androidx.recyclerview:recyclerview:1.4.0'
        implementation 'androidx.annotation:annotation:1.9.1'
    
        // Note: these libraries require that the Google repository has been declared
        // in the pluginManagement section of the top-level build.gradle file.
    }

    Kotlin

    ...
    dependencies {
        implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.jar"))))
    
        // AndroidX libraries
        implementation("androidx.core:core-ktx:1.16.0")
        implementation("androidx.appcompat:appcompat:1.7.1")
        implementation("androidx.cardview:cardview:1.0.0")
        implementation("com.google.android.material:material:1.7.0")
        implementation("androidx.gridlayout:gridlayout:1.1.0")
        implementation("androidx.leanback:leanback:")
        implementation("androidx.mediarouter:mediarouter:1.8.1")
        implementation("androidx.palette:palette-ktx:1.0.0")
        implementation("androidx.recyclerview:recyclerview:1.4.0")
        implementation("androidx.annotation:annotation:1.9.1")
    
        // Note: these libraries require that the Google repository has been declared
        // in the pluginManagement section of the top-level build.gradle.kts file.
    }
    หากต้องการความช่วยเหลือในการระบุข้อความประกาศที่ถูกต้องสำหรับไลบรารี ให้ค้นหาที่เก็บ Google Maven หรือ Maven Central
  4. บันทึกไฟล์ build.gradle แล้วปิดโปรเจ็กต์ใน IntelliJ ไปที่ไดเรกทอรีโปรเจ็กต์แล้วลบไดเรกทอรี .idea และไฟล์ IML ในโปรเจ็กต์
  5. เปิด Android Studio แล้วคลิก File > New > Import Project
  6. ค้นหาไดเรกทอรีโปรเจ็กต์ เลือกไฟล์ build.gradle หรือ build.gradle.kts ที่คุณสร้าง แล้วคลิกตกลงเพื่อนำเข้า โปรเจ็กต์
  7. คลิกสร้าง > สร้างโปรเจ็กต์เพื่อทดสอบไฟล์บิลด์โดย การสร้างโปรเจ็กต์ และแก้ไขข้อผิดพลาดที่พบ

ขั้นตอนถัดไป

เมื่อย้ายข้อมูลโปรเจ็กต์ไปยัง Android Studio แล้ว ให้ดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้าง ด้วย Gradle และการเรียกใช้แอปใน Android Studio โดยอ่านสร้างและเรียกใช้แอป

คุณอาจต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับ การควบคุมเวอร์ชัน การจัดการการขึ้นต่อกัน และการกำหนดค่า Android Studio ทั้งนี้ขึ้นอยู่กับโปรเจ็กต์และเวิร์กโฟลว์ หากต้องการเริ่มต้นใช้งาน Android Studio โปรดอ่านพบกับ Android Studio

กำหนดค่าการควบคุมเวอร์ชัน

Android Studio รองรับระบบควบคุมเวอร์ชันที่หลากหลาย ซึ่งรวมถึง Git, Mercurial และ Subversion คุณเพิ่มระบบควบคุมเวอร์ชันอื่นๆ ได้ผ่านปลั๊กอิน

หากแอปอยู่ภายใต้การควบคุมแหล่งที่มาอยู่แล้ว คุณอาจต้องเปิดใช้ใน Android Studio จากเมนู VCS ให้คลิกเปิดใช้การผสานรวมการควบคุมเวอร์ชัน แล้วเลือกระบบควบคุมเวอร์ชันที่เหมาะสม

หากแอปไม่ได้อยู่ภายใต้การควบคุมแหล่งที่มา คุณจะกำหนดค่าได้หลังจากนำเข้า แอปไปยัง Android Studio ใช้ตัวเลือกเมนู VCS ของ Android Studio เพื่อเปิดใช้ การรองรับ VCS สำหรับระบบควบคุมเวอร์ชันที่ต้องการ สร้างที่เก็บ นำเข้า ไฟล์ใหม่ลงในการควบคุมเวอร์ชัน และดำเนินการควบคุมเวอร์ชันอื่นๆ

  1. จากเมนู VCS ของ Android Studio ให้คลิกเปิดใช้การผสานรวมการควบคุมเวอร์ชัน
  2. เลือกระบบควบคุมเวอร์ชันที่จะเชื่อมโยงกับรูทของโปรเจ็กต์จากเมนู แล้วคลิกตกลง ตอนนี้เมนู VCS จะแสดงตัวเลือกการควบคุมเวอร์ชันจำนวนหนึ่งตามระบบที่คุณเลือก

หมายเหตุ: คุณยังใช้ตัวเลือกเมนูไฟล์ > การตั้งค่า > การควบคุมเวอร์ชันเพื่อตั้งค่าและแก้ไขการควบคุมเวอร์ชันได้ด้วย

ดูข้อมูลเพิ่มเติมเกี่ยวกับการทำงานกับการควบคุมเวอร์ชันได้ที่ ข้อมูลอ้างอิงการควบคุมเวอร์ชันของ IntelliJ

การลงนามแอป

หากเคยใช้ใบรับรองการแก้ไขข้อบกพร่องมาก่อน ระบบอาจตรวจพบใบรับรองดังกล่าวในระหว่าง กระบวนการนำเข้า ในกรณีนี้ Android Studio จะยังคงอ้างอิงใบรับรองดังกล่าวต่อไป มิฉะนั้น การกำหนดค่าการแก้ไขข้อบกพร่องจะใช้คลังคีย์การแก้ไขข้อบกพร่องที่สร้างโดย Android Studio โดยใช้รหัสผ่านที่ทราบและคีย์เริ่มต้นที่มีรหัสผ่านที่ทราบ ซึ่งอยู่ใน $HOME/.android/debug.keystore ระบบจะตั้งค่าประเภทบิลด์สำหรับดีบักให้ใช้การกำหนดค่าดีบักนี้โดยอัตโนมัติเมื่อคุณเรียกใช้หรือแก้ไขข้อบกพร่องของโปรเจ็กต์จาก Android Studio

ในทำนองเดียวกัน กระบวนการนำเข้าอาจตรวจพบใบรับรองการเผยแพร่ที่มีอยู่ หากก่อนหน้านี้ไม่ได้กำหนดใบรับรองรุ่น ให้เพิ่มการกำหนดค่าการรับรองรุ่น ลงในไฟล์ build.gradle หรือ build.gradle.kts หรือใช้ตัวเลือกเมนู Build > Generate Signed APK เพื่อเปิดวิซาร์ด Generate Signed APK ดูข้อมูลเพิ่มเติมเกี่ยวกับการลงนามแอปได้ที่ ลงนามแอป

ปรับขนาดฮีปสูงสุดของ Android Studio

โดยค่าเริ่มต้น Android Studio มีขนาดฮีปสูงสุด 1280 MB หากคุณกำลัง ทำงานในโปรเจ็กต์ขนาดใหญ่หรือระบบมี RAM จำนวนมาก คุณจะปรับปรุง ประสิทธิภาพได้โดยเพิ่มขนาดฮีปสูงสุด

การอัปเดตซอฟต์แวร์

Android Studio จะอัปเดตแยกจากปลั๊กอิน Gradle, เครื่องมือบิลด์ และ เครื่องมือ SDK คุณสามารถระบุเวอร์ชันที่ต้องการใช้กับ Android Studio ได้

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

อ่านข้อมูลเพิ่มเติมเกี่ยวกับการอัปเดต Android Studio และการใช้เวอร์ชันตัวอย่างและเบต้าได้ที่หัวข้อการอัปเดต