将一个 现有 iOS Xcode 项目, 快速改造为 可以用 Android Studio 运行和调试 的项目

781 阅读1分钟

环境

  1. 本文不需要 任何关于 KMP 代码相关 的修改

  2. Android Studio Narwhal 及其以上 + macOS

  3. 安装 Kotlin Multiplatform 插件
    plugins.jetbrains.com/plugin/inde…

  4. 重启 Android Studio.

  5. 配置 IDE
    开启 Settings | Advanced Settings 中的
    Enable experimental Multiplatform IDE features,
    ↑ 不再推荐. 已知 在 0.9-251.26094-AS-80 及 其以上 版本,
    存在 bug, 会导致 Find Usages 功能失效.

  6. 关闭 Android Studio.

项目目录路径

  • 项目根目录: MyApplication
  • iOS Module: MyApplication/iosApp
  • iOS Project: MyApplication/iosApp/iosApp.xcodeproj

建议 完全关闭 Android Studio 再修改.
不然感觉 关闭 Android Studio 的时候,
内存缓存 会覆盖 MyApplication/.idea.

必需文件

MyApplication/.idea/xcode.xml

<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="XcodeMetaData"
    PROJECT_DIR="$PROJECT_DIR$/iosApp"
    PROJECT_FILE="$PROJECT_DIR$/iosApp/iosApp.xcodeproj/project.xcworkspace" />
</project>

可选文件 (用于 控制 AS 中的 目录名 和 目录结构)

MyApplication/.idea/.name

这个文件 里头的内容, 会覆盖 AS 展示的名字, 酌情删除

MyApplication/.idea/iosApp.iml

这个文件的文件名 可以改, 不过 不建议 乱改.
Android Studio 目录结构 可能会 变得很奇怪.

<?xml version="1.0" encoding="UTF-8"?>
<module classpath="AppCode" type="CIDR_MODULE" version="4" />

MyApplication/.idea/modules.xml

注意与 与上面 .iml 文件名相同.

<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="ProjectModuleManager">
    <modules>
      <module fileurl="file://$PROJECT_DIR$/.idea/iosApp.iml"
        filepath="$PROJECT_DIR$/.idea/iosApp.iml" />
    </modules>
  </component>
</project>