/ FLUTTER

안드로이드 스튜디오에서 Open Android module in Android Studio 메뉴가 사라졌어요!

모바일 (안드로이드, iOS)를 타겟으로 하는 플러터 프로젝트는 안드로이드 프로젝트 (Gradle 프로젝트)와 iOS 프로젝트 (Xcode workspace)가 포함되어 있습니다.

안드로이드 스튜디오에 플러터 플러그인을 설치하면, 다음과 같이 안드로이드/iOS 프로젝트를 열 수 있는 컨텍스트 메뉴를 사용할 수 있습니다.

그런데, 간혹 다음과 같이 안드로이드 프로젝트를 여는 메뉴인 Open Android module in Android Studio 메뉴가 나오지 않는 경우가 있습니다.

이는 안드로이드 프로젝트에 IntelliJ 프로젝트 파일 (*.iml)이 없어서 발생하는 문제입니다. 이를 해결하는 방법은 다음과 같습니다.

  1. 텍스트 편집기 (Visual Stdio Code 등)을 연 후, 다음 내용을 붙여넣습니다.

     <?xml version="1.0" encoding="UTF-8"?>
     <module type="JAVA_MODULE" version="4">
     <component name="FacetManager">
         <facet type="android" name="Android">
         <configuration>
             <option name="ALLOW_USER_CONFIGURATION" value="false" />
             <option name="GEN_FOLDER_RELATIVE_PATH_APT" value="/gen" />
             <option name="GEN_FOLDER_RELATIVE_PATH_AIDL" value="/gen" />
             <option name="MANIFEST_FILE_RELATIVE_PATH" value="/app/src/main/AndroidManifest.xml" />
             <option name="RES_FOLDER_RELATIVE_PATH" value="/app/src/main/res" />
             <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/app/src/main/assets" />
             <option name="LIBS_FOLDER_RELATIVE_PATH" value="/app/src/main/libs" />
             <option name="PROGUARD_LOGS_FOLDER_RELATIVE_PATH" value="/app/src/main/proguard_logs" />
         </configuration>
         </facet>
     </component>
     <component name="NewModuleRootManager" inherit-compiler-output="true">
         <exclude-output />
         <content url="file://$MODULE_DIR$">
         <sourceFolder url="file://$MODULE_DIR$/app/src/main/java" isTestSource="false" />
         <sourceFolder url="file://$MODULE_DIR$/app/src/main/kotlin" isTestSource="false" />
         <sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" generated="true" />
         </content>
         <orderEntry type="jdk" jdkName="Android API 29 Platform" jdkType="Android SDK" />
         <orderEntry type="sourceFolder" forTests="false" />
         <orderEntry type="library" name="Flutter for Android" level="project" />
         <orderEntry type="library" name="KotlinJavaRuntime" level="project" />
     </component>
     </module>
    
  2. 플러터 프로젝트 내 안드로이드 프로젝트 폴더 (android)에 {프로젝트 이름}_android.iml라는 이름으로 파일을 저장합니다. (참고: build.gradlesettings.gradle이 있는 폴더입니다)

    • 예: 프로젝트 이름이 my_app인 경우 my_app_android.iml으로 파일을 저장하면 됩니다.

다시 안드로이드 스튜디오로 돌아와보면, 다음 스크린샷과 같이 안드로이드 프로젝트를 여는 메뉴가 다시 나오는 것을 확인할 수 있습니다.

kunny

커니

안드로이드와 오픈소스, 코틀린(Kotlin)에 관심이 많습니다. 한국 GDG 안드로이드 운영자 및 GDE 안드로이드로 활동했으며, 현재 구글에서 애드몹 기술 지원을 담당하고 있습니다.

Read More