我正在尝试在Android Studio 2.3 Canary 2 中使用本机调试;Gradle 插件是“ gradle:2.3.0-alpha2 ”。我从https://github.com/googlesamples/android-ndk 获取了“hello-libs”样本。此示例使用 CMake 作为外部本机构建系统。好的,/hello-libs/distribution/ 中有预构建的库(libgmath.a 和 libgperf.so)。库包含调试信息,它们不会被剥离。我尝试使用命令将 lldb 调试器指向我的 PC 上的源代码来本地调试这些预构建的库:
settings set target.source-map
Run Code Online (Sandbox Code Playgroud)
所以,我用
objdump -Wl
Run Code Online (Sandbox Code Playgroud)
获取用于构建这些库的源文件的路径。Objdump 给了我下一个目录:
好的,在调试配置中,我在“LLDB 启动命令”中添加了两个命令
在选项卡“符号目录”中,我设置了在以下位置搜索调试符号的路径:
我在 ndk.abiFilters 中只使用了“ armeabi-v7a ”。
Android Studio 中的所有调试配置对我来说真的不是很明显。所以,我的问题是:
我制作了一个简单的空白项目并通过swift-package-manager添加了Bugsee。
它位于https://github.com/bugsee/spm。
我可以成功为 iOS 设备构建项目。
但对于模拟器来说却失败了。而且错误并不是很详细(路径被缩短):
Cannot open file handle for file at path: Path(str: ".../Bugsee.xcframework/ios-arm64_i386_x86_64-simulator/Bugsee.framework")
Run Code Online (Sandbox Code Playgroud)
这是什么意思?
我还发现,在将 Bugsee.xcframework 添加到Frameworks、Libraries 和 Embedded Content中后,模拟器的构建就可以了。

有谁知道出了什么问题吗?